:root{--text:#46524d;--text-h:#17201d;--bg:#f8fafc;--border:#dfe5ea;--sans:"Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--heading:"Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;font:14px/1.5 var(--sans);letter-spacing:.08px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);min-width:960px;margin:0;padding:0}#root{flex-direction:column;width:100%;min-height:100vh;margin:0;padding:0;display:flex}.ant-btn.ant-btn-primary:not(:disabled),.ant-btn.ant-btn-primary:not(:disabled)>span,.ant-btn.ant-btn-primary:not(:disabled) .anticon{color:#fff}:root{--shell-navy:#17201d;--shell-navy-raised:#21302b;--shell-navy-hover:#2a3c35;--shell-accent:#2563eb;--shell-text:#d8e4ee;--shell-text-muted:#8fa3b5;--shell-divider:#ffffff14}.app-header.ant-layout-header{background:#fff;flex-shrink:0;align-items:stretch;height:60px;padding:0;line-height:normal;display:flex}.app-brand{background:var(--shell-navy);cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:10px;padding:0 16px;transition:width .2s;display:flex;overflow:hidden}.app-brand-name{color:#fff;letter-spacing:-.03em;white-space:nowrap;font-size:16px;font-weight:700;line-height:1.1}.app-header-main{background:#fff;border-bottom:1px solid #dfe5ea;flex:1;justify-content:space-between;align-items:center;padding:0 18px 0 20px;display:flex}.app-header-actions{align-items:center;gap:8px;display:flex}.app-header-action-divider{background:#dfe5ea;width:1px;height:22px;margin:0 3px}.account-menu-trigger.ant-btn{color:#253845;align-items:center;gap:8px;width:auto;height:38px;padding:4px 7px 4px 4px;display:flex}.account-menu-trigger .ant-avatar{color:#0958d9;background:#e6f4ff}.account-menu-name{white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:13px;font-weight:600;overflow:hidden}.account-menu-identity{min-width:176px;padding:3px 2px}.account-menu-identity strong,.account-menu-identity span{display:block}.account-menu-identity strong{color:#18212b;font-size:13px}.account-menu-identity span{color:#72808e;font:11px/1.4 var(--mono);margin-top:3px}.account-password-form{margin-top:20px}.app-header-context span,.app-header-context strong{display:block}.app-header-context span{color:#71808d;font:600 9px/1.2 var(--mono);letter-spacing:.14em}.app-header-context strong{color:#253845;margin-top:3px;font-size:13px;font-weight:600}.app-content.ant-layout-content{min-width:0;margin:14px}.app-content-panel{background:#fff;border:1px solid #e1e6ea;border-radius:3px;height:100%;min-height:360px;padding:22px}.studio-page-heading{border-bottom:1px solid #dfe5ea;justify-content:space-between;align-items:flex-end;gap:24px;margin:-4px 0 20px;padding-bottom:18px;display:flex}.studio-page-heading .ant-typography{margin:0}.studio-page-heading h2.ant-typography{color:#101820;margin:2px 0 4px}.studio-kicker{color:#547083;font:600 11px/1.4 var(--mono);letter-spacing:.12em}.dataset-total{border-left:3px solid var(--shell-accent);min-width:118px;padding-left:16px}.dataset-total strong,.dataset-total span{display:block}.dataset-total strong{color:#101820;font:650 26px/1 var(--mono)}.dataset-total span{color:#71808d;margin-top:6px;font-size:12px}.studio-filter-rail,.ticket-filter-rail,.jobs-filterbar,.dataset-list-toolbar,.augmentation-filter-rail,.sample-filter-rail{background:#f7f9fa!important;border:1px solid #dfe5ea!important;border-left:3px solid #2563eb!important;border-radius:3px!important;flex-flow:wrap!important;justify-content:flex-start!important;align-items:center!important;gap:10px!important;margin-bottom:12px!important;padding:10px 12px!important;display:flex!important}.studio-filter-search,.ticket-search,.studio-filter-rail .ant-input-search,.ticket-filter-rail .ant-input-search,.jobs-filterbar .ant-input-search,.dataset-list-toolbar .ant-input-search,.augmentation-filter-rail .ant-input-search,.sample-filter-rail .ant-input-search{flex:none!important;width:240px!important;max-width:240px!important;margin-left:0!important}.dataset-list-toolbar-spacer,.unified-filter-spacer{display:none!important}.auth-page{color:#18212b;background:#f8fafc;grid-template-columns:48vw 1fr;min-height:100vh;display:grid}.auth-identity-rail{box-sizing:border-box;color:#d8e4ee;background:linear-gradient(145deg,#020b14 0%,#0a1e30 60%,#041424 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:56px 64px 44px;display:flex;position:relative;overflow:hidden}.auth-identity-bg-glow{pointer-events:none;background:radial-gradient(circle at 30% 30%,#1677ff26 0%,#0000 50%),radial-gradient(circle at 75% 70%,#6366f11f 0%,#0000 45%);width:140%;height:140%;position:absolute;top:-10%;left:-20%}.auth-identity-content{z-index:1;max-width:540px;margin-top:clamp(24px,6vh,80px);position:relative}.auth-brand-lockup{align-items:center;gap:16px;display:flex}.auth-brand-name{color:#fff;letter-spacing:-.03em;font-size:clamp(28px,2.8vw,38px);font-weight:700;line-height:1.1}.brand-vl{background:linear-gradient(135deg,#60a5fa 0%,#818cf8 50%,#c084fc 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;display:inline-block}.auth-brand-desc{color:#94a3b8;max-width:440px;margin:22px 0 0;font-size:15px;line-height:1.7}.auth-vision-graphic{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#041221bf;border:1px solid #3b82f640;border-radius:14px;width:100%;max-width:440px;height:275px;margin-top:clamp(24px,4vh,42px);position:relative;overflow:hidden;box-shadow:0 12px 32px #0006,inset 0 1px #ffffff14}.vision-stage{width:100%;height:100%;position:relative}.vision-reticle{pointer-events:none;z-index:2;border-style:solid;border-color:#3b82f6;width:12px;height:12px;position:absolute}.vision-reticle.top-left{border-width:2px 0 0 2px;top:10px;left:10px}.vision-reticle.top-right{border-width:2px 2px 0 0;top:10px;right:10px}.vision-reticle.bottom-left{border-width:0 0 2px 2px;bottom:10px;left:10px}.vision-reticle.bottom-right{border-width:0 2px 2px 0;bottom:10px;right:10px}.vision-grid-overlay{background-image:linear-gradient(#3b82f614 1px,#0000 1px),linear-gradient(90deg,#3b82f614 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.vision-scan-line{z-index:2;background:linear-gradient(90deg,#0000,#3b82f6 50%,#60a5fa 75%,#0000);height:2px;animation:4s ease-in-out infinite alternate visionScan;position:absolute;left:0;right:0;box-shadow:0 0 12px #3b82f6}@keyframes visionScan{0%{opacity:.3;top:12%}50%{opacity:1}to{opacity:.3;top:80%}}.lottery-ticket-canvas{position:absolute;inset:26px 12px 38px}.bbox-numbers{box-sizing:border-box;background:#10b98114;border:1.5px solid #10b981;border-radius:4px;height:86px;padding:16px 14px 6px;position:absolute;top:10px;left:10px;right:10px;box-shadow:0 0 14px #10b98126}.bbox-numbers .bbox-header{background:#059669}.lottery-num-balls{justify-content:center;align-items:center;gap:8px;margin-top:10px;display:flex}.lottery-num-balls .ball{width:29px;height:29px;font:700 12px/1 var(--mono);color:#fff;border-radius:50%;justify-content:center;align-items:center;animation:2.4s ease-in-out infinite alternate ballPulse;display:inline-flex;box-shadow:0 3px 6px #00000059}.red-ball{background:linear-gradient(135deg,#ef4444 0%,#b91c1c 100%);border:1.5px solid #fff6}.blue-ball{background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border:1.5px solid #fff6;margin-left:4px}@keyframes ballPulse{0%{transform:scale(.96)}to{transform:scale(1.06)}}.bbox-barcode{box-sizing:border-box;background:#3b82f614;border:1.5px dashed #3b82f6;border-radius:4px;height:76px;padding:16px 14px 6px;position:absolute;top:124px;left:10px;right:10px;box-shadow:0 0 10px #3b82f61f}.bbox-barcode .bbox-header{background:#2563eb}.lottery-barcode-sim{justify-content:center;align-items:center;gap:4px;height:22px;display:flex}.lottery-barcode-sim span{background:#ffffffa6;width:2px;height:100%;display:inline-block}.lottery-barcode-sim span.w-wide{background:#60a5fa;width:5px}.barcode-txt-readout{color:#94a3b8;font:500 10px/1 var(--mono);justify-content:space-between;align-items:center;margin-top:6px;display:flex}.readout-status{color:#10b981;font-weight:600}.bbox-header{font:600 9px/1 var(--mono);border-radius:3px;align-items:center;gap:6px;padding:2px 6px;display:flex;position:absolute;top:-18px;left:-1px}.bbox-header .bbox-tag{color:#fff}.bbox-conf{opacity:.85;font-weight:400}.vision-status-bar{color:#94a3b8;height:32px;font:500 10px/1 var(--mono);letter-spacing:.05em;background:#020b14e6;border-top:1px solid #3b82f62e;justify-content:space-between;align-items:center;padding:0 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.status-online{color:#38bdf8;align-items:center;gap:6px;display:flex}.status-online i{background:#10b981;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #10b981}.status-latency{color:#fbbf24;font-weight:600}.auth-identity-footer{z-index:1;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:24px;padding-top:32px;display:flex;position:relative}.auth-system-state{align-items:center;gap:10px;display:flex}.auth-system-state i{background:#10b981;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 4px #10b98126}.auth-system-state span{color:#3b82f6;font:600 10px/1 var(--mono);letter-spacing:.14em;display:block}.auth-system-state strong{color:#cbd5e1;margin-top:3px;font-size:12px;font-weight:500;display:block}.auth-filing-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.auth-filing-link{color:#64748b;font:11px/1.5 var(--mono);align-items:center;gap:6px;text-decoration:none;transition:color .2s;display:inline-flex}.auth-filing-link:hover{color:#93c5fd}.auth-filing-icon{object-fit:contain;width:14px;height:14px}.auth-form-stage{background-color:#f1f5f9;background-image:radial-gradient(circle,#2563eb0f 0%,#0000 65%),linear-gradient(#e2e8f0 1px,#0000 1px),linear-gradient(90deg,#e2e8f0 1px,#0000 1px);background-size:100% 100%,28px 28px,28px 28px;justify-content:center;align-items:center;padding:40px 32px;display:flex;position:relative}.auth-form-wrap{z-index:1;background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;width:min(440px,100%);padding:44px 44px 40px;position:relative;box-shadow:0 4px 6px -1px #00000008,0 20px 40px -15px #0f172a14}.auth-form-header{margin-bottom:32px}.auth-form-badge{color:#2563eb;font:600 10px/1 var(--mono);letter-spacing:.12em;background:#eff6ff;border:1px solid #dbeafe;border-radius:20px;align-items:center;gap:8px;margin-bottom:16px;padding:4px 10px;display:inline-flex}.badge-pulse{background:#2563eb;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #2563eb33}.auth-form-header h2{color:#0f172a;letter-spacing:-.03em;margin:0;font-size:26px;font-weight:700}.auth-form-header p{color:#64748b;margin:8px 0 0;font-size:14px}.auth-form-alert{border-radius:8px;margin-bottom:24px}.auth-form-wrap .ant-form-item-label>label{color:#334155;font-size:13px;font-weight:600}.auth-form-wrap .ant-input-affix-wrapper{border-color:#cbd5e1;border-radius:8px;padding:9px 12px;transition:all .2s;box-shadow:0 1px 2px #00000005}.auth-form-wrap .ant-input-affix-wrapper:hover{border-color:#94a3b8}.auth-form-wrap .ant-input-affix-wrapper-focused{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.auth-submit.ant-btn{background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);border:none;border-radius:8px;height:46px;margin-top:8px;font-size:15px;font-weight:600;transition:all .2s;box-shadow:0 4px 12px #2563eb40}.auth-submit.ant-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #2563eb59;background:linear-gradient(135deg,#1d4ed8 0%,#1e40af 100%)!important}.auth-security-note{color:#64748b;border-top:1px solid #f1f5f9;align-items:flex-start;gap:12px;margin-top:28px;padding-top:20px;display:flex}.auth-security-note>.anticon{color:#10b981;margin-top:3px;font-size:16px}.auth-security-note p{margin:0}.auth-security-note strong{color:#334155;font-size:12px;font-weight:600;display:block}.auth-security-note span{color:#94a3b8;margin-top:2px;font-size:11px;line-height:1.5;display:block}@media (width<=960px){.auth-page{grid-template-columns:1fr}.auth-identity-rail{min-height:auto;padding:40px 32px}.auth-identity-content{margin-top:0}.auth-vision-graphic{display:none}.auth-identity-footer{margin-top:32px}.auth-form-stage{padding:48px 20px}.auth-form-wrap{padding:32px 28px}}.app-navigation-sider,.app-navigation-menu.ant-menu-dark{background:var(--shell-navy)}.app-navigation-menu.ant-menu-dark{border-inline-end:0;padding-top:8px}.app-navigation-menu.ant-menu-dark .ant-menu-submenu-title{color:#a7b8c6;border-left:3px solid #0000;border-radius:0;height:44px;margin:0;font-weight:600}.app-navigation-menu.ant-menu-dark .ant-menu-submenu-title:hover,.app-navigation-menu.ant-menu-dark .ant-menu-submenu-open>.ant-menu-submenu-title{color:#fff;background:#071f32}.app-navigation-menu.ant-menu-dark .ant-menu-sub.ant-menu-inline{background:#001421}.app-navigation-menu.ant-menu-dark .ant-menu-item{width:100%;height:46px;color:var(--shell-text-muted);border-left:3px solid #0000;border-radius:0;margin:0}.app-navigation-menu.ant-menu-dark .ant-menu-item:hover{background:var(--shell-navy-hover);color:#fff}.app-navigation-menu.ant-menu-dark .ant-menu-item-selected{background:var(--shell-navy-raised);border-left-color:var(--shell-accent);color:#fff}.app-menu-capability-label{justify-content:space-between;align-items:center;gap:8px;display:flex}.app-menu-capability-label small{color:#6f8798;font:10px var(--mono)}.ant-layout-sider-collapsed .app-menu-capability-label small{display:none}@media (width<=1100px){.app-content.ant-layout-content{margin:10px}.app-content-panel{padding:16px}}.immersive-page{background:#f4f6f8;width:100%;height:100vh;min-height:0;overflow:hidden}.immersive-page-content{min-width:0;min-height:0;margin:0;padding:0;overflow:hidden}.cluster-labeler-shell{background:#f5f7fa;flex-direction:column;min-width:1080px;height:100vh;display:flex;overflow:hidden}.cluster-labeler-body{flex:1;min-height:0;overflow:hidden}.cluster-commandbar{z-index:10;background:#fff;border-bottom:1px solid #dfe4ea;flex:0 0 62px;justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:8px 12px;display:flex;position:relative;overflow-x:auto}.cluster-commandbar-context{align-items:center;gap:10px;min-width:max-content;display:flex}.cluster-commandbar-context>.ant-btn:first-child{padding-inline:8px 12px}.cluster-commandbar-divider{background:#e6eaf0;width:1px;height:34px;margin-right:2px}.cluster-commandbar-title{min-width:174px}.cluster-commandbar-title h4.ant-typography{color:#17212b;text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:20px;overflow:hidden}.cluster-commandbar-title .ant-typography{white-space:nowrap;line-height:18px;display:block}.cluster-commandbar-actions{flex-wrap:nowrap;min-width:max-content}.cluster-sidebar.ant-layout-sider{border-right:1px solid #dce3e9;background:#f7f9fb!important}.cluster-sidebar-filters{background:#fff;border-bottom:1px solid #dce3e9;padding:16px 14px 12px}.cluster-sidebar .ant-input,.cluster-sidebar .ant-input-affix-wrapper,.cluster-sidebar .ant-input-search-button,.cluster-sidebar .ant-select-selector{color:#17232c!important;box-shadow:none!important;background:#fff!important;border-color:#cbd5dd!important}.cluster-sidebar .ant-input::placeholder,.cluster-sidebar .ant-select-selection-placeholder{color:#8b9aa5!important}.cluster-sidebar .ant-input-clear-icon,.cluster-sidebar .anticon-search,.cluster-sidebar .ant-select-arrow{color:#6f818e!important}.cluster-sidebar .ant-input-affix-wrapper:focus,.cluster-sidebar .ant-input-affix-wrapper-focused,.cluster-sidebar .ant-select-focused .ant-select-selector{border-color:#1677ff!important}.cluster-nav-list{scrollbar-color:#aab7c0 #eef2f5}.cluster-nav-item.ant-list-item{cursor:pointer;background:#f7f9fb;border-bottom:1px solid #e1e7eb;border-left:3px solid #0000;min-height:72px;padding:10px 14px;transition:background-color .16s,border-color .16s}.cluster-nav-item.ant-list-item:hover{background:#eef4f8}.cluster-nav-item.ant-list-item.is-active{background:#e5f1ff;border-left-color:#1677ff}.cluster-nav-item.ant-list-item.is-drop-target{background:#edf9f1;border-left-color:#52c41a;box-shadow:inset 0 0 0 1px #95de64}.cluster-nav-item.ant-list-item.is-drop-disabled{cursor:not-allowed;opacity:.65}.cluster-nav-drop-label{white-space:nowrap;font-size:11px;font-weight:650;color:#237804!important}.cluster-nav-item .cluster-nav-title,.cluster-nav-item .ant-badge-status-text,.cluster-nav-item .cluster-nav-status{color:#17232c}.cluster-nav-item .cluster-nav-status{color:#16835f;font-weight:500}.cluster-nav-item .cluster-nav-count,.cluster-nav-item .cluster-nav-description{color:#6f818e!important}.cluster-nav-item .cluster-nav-thumbnail{background:#fff;border:1px solid #d6dee4}.cluster-sidebar .ant-empty-description{color:#7c8d99}.cluster-image-grid-spinner{flex:1;min-height:0}.cluster-image-grid-spinner .ant-spin-container{height:100%}.cluster-image-grid-scroll{scroll-behavior:auto;height:100%;padding-bottom:24px;overflow-y:auto}.cluster-image-card{box-sizing:border-box;cursor:pointer;background:#fff;border:2px solid #d9d9d9;border-radius:4px;flex-direction:column;flex:0 0 120px;width:120px;height:196px;transition:border-color .16s,box-shadow .16s;display:flex;position:relative;overflow:hidden}.cluster-image-card:hover{border-color:#91caff;box-shadow:0 1px 4px #00182724}.cluster-image-card.is-selected{border-color:var(--shell-accent)}.cluster-image-card.is-dragging{cursor:grabbing;opacity:.48;box-shadow:0 0 0 2px #1677ff2e}.cluster-image-card-preview{background:#f5f5f5;flex:0 0 116px;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.cluster-image-card-preview img{object-fit:contain;max-width:100%;max-height:100%;display:block}.cluster-image-card-selected-icon{z-index:1;color:var(--shell-accent);background:#fff;border-radius:50%;font-size:16px;position:absolute;top:4px;right:4px}.cluster-image-card-info{background:#fff;border-top:1px solid #f0f0f0;flex:1;grid-template-rows:16px 16px 16px minmax(0,1fr);min-width:0;min-height:0;padding:2px 4px 3px;font-size:11px;line-height:16px;display:grid}.cluster-image-card.is-selected .cluster-image-card-info{background:#e6f4ff}.cluster-image-card-filename,.cluster-image-card-field-value{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.cluster-image-card-filename{color:#595959}.cluster-image-card-field{align-items:flex-start;gap:3px;min-width:0;display:flex;overflow:hidden}.cluster-image-card-field-label{text-align:center;border-radius:2px;flex:0 0 25px;height:14px;margin-top:1px;font-size:9px;font-weight:600;line-height:14px}.cluster-image-card-field-label.is-category{color:#c41d7f;background:#fff0f6}.cluster-image-card-field-label.is-tag{color:#0958d9;background:#e6f4ff}.cluster-image-card-field-label.is-ocr{color:#237804;background:#f6ffed}.cluster-image-card-field-value{color:#595959;flex:auto}.cluster-image-card-field-value.is-category{color:#c41d7f}.cluster-image-card-field-value.is-tag{color:#0958d9}.cluster-image-card-field.is-ocr{line-height:14px}.cluster-image-card-field-value.is-ocr{color:#237804;overflow-wrap:anywhere;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:14px;display:-webkit-box}.cluster-image-card-field-value.is-empty{color:#bfbfbf}
