:root{color-scheme:light;font-family:Microsoft YaHei,PingFang SC,Segoe UI,system-ui,sans-serif;--ink: #18212f;--ink-soft: #334155;--muted: #647185;--muted-strong: #4b586b;--line: #d8dee8;--line-strong: #c2ccd9;--panel: #ffffff;--panel-soft: #f8fafc;--paper: #f3f6fa;--sidebar: #101820;--sidebar-soft: #17212b;--accent: #0f8b8d;--accent-soft: #e6f4f3;--accent-strong: #096b6d;--info: #2563eb;--info-soft: #eaf1ff;--warn: #9a5b13;--warn-soft: #fff5e2;--danger: #b42318;--danger-soft: #fff1ef;--ok: #16794a;--ok-soft: #eaf7ef;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 12px 30px rgba(16, 24, 40, .1);--shadow-lg: 0 24px 70px rgba(16, 24, 40, .16);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--motion-fast: .14s;--motion-base: .21s;--ease-out: cubic-bezier(.22, 1, .36, 1);--z-sticky: 20;--z-dropdown: 50;--z-modal-backdrop: 60;--z-modal: 70;--z-tooltip: 80}*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.45}body.modal-scroll-lock{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:24px;line-height:1.2;letter-spacing:0;text-wrap:balance}h2{margin-bottom:6px;font-size:17px;line-height:1.25;letter-spacing:0}h3{margin-bottom:6px;font-size:14px;line-height:1.3}p{color:var(--muted);line-height:1.55}svg{flex:0 0 auto}:focus-visible{outline:3px solid rgba(15,139,141,.22);outline-offset:2px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 15%,rgba(15,139,141,.1),transparent 28%),var(--paper)}.auth-card{width:min(430px,100%);padding:28px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg)}.auth-card.compact{display:flex;align-items:center;gap:12px}.auth-logo{width:48px;height:48px;display:block;margin-bottom:18px;border-radius:12px}.auth-card.compact .auth-logo{margin-bottom:0}.auth-copy,.auth-hint{color:var(--muted)}.auth-copy{margin:10px 0 18px}.auth-submit{width:100%;margin-top:4px}.auth-hint{margin-top:12px;font-size:13px}.form-field{display:grid;gap:6px;margin-bottom:12px;color:var(--muted-strong);font-size:13px;font-weight:700}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:38px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);padding:0 10px;outline:0;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.form-field textarea{min-height:86px;padding:9px 10px;resize:vertical}.field-hint{min-height:16px;color:var(--muted);font-size:12px;font-weight:650;line-height:1.35}.keyword-combobox{position:relative}.keyword-combobox input{padding-right:38px}.keyword-combobox-button{position:absolute;top:5px;right:5px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:7px;background:var(--panel-soft);color:var(--muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.keyword-combobox-button:hover{background:#0f8b8d1a;color:var(--accent)}.keyword-suggestion-panel{position:absolute;z-index:var(--z-dropdown);top:calc(100% + 6px);left:0;right:0;display:grid;gap:4px;max-height:280px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-lg)}.keyword-suggestion-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;width:100%;padding:9px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.keyword-suggestion-item:hover{background:var(--panel-soft)}.keyword-suggestion-item strong,.keyword-suggestion-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyword-suggestion-item span{color:var(--muted);font-size:12px}.keyword-suggestion-item em{align-self:center;grid-row:1 / span 2;grid-column:2;color:var(--accent);font-size:12px;font-style:normal;font-weight:800}.keyword-suggestion-empty{padding:12px 10px;color:var(--muted);font-size:12px;font-weight:700}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0f8b8d1f}.form-error,.form-success{padding:9px 10px;margin:10px 0;border-radius:var(--radius-sm);font-size:13px;font-weight:700}.form-error{color:var(--danger);border:1px solid rgba(180,35,24,.22);background:var(--danger-soft)}.form-success{color:var(--ok);border:1px solid rgba(22,121,74,.22);background:var(--ok-soft)}.app-shell{min-height:100vh;display:grid;grid-template-columns:236px minmax(0,1fr)}.sidebar{position:sticky;top:0;min-height:100vh;height:100vh;overflow-y:auto;background:var(--sidebar);color:#eef5f5;display:flex;flex-direction:column}.brand-block{display:flex;align-items:center;gap:11px;padding:18px 16px 16px;border-bottom:1px solid rgba(255,255,255,.09)}.brand-block strong,.brand-block span{display:block}.brand-block strong{font-size:15px}.brand-block span{margin-top:2px;color:#eef5f5a3;font-size:12px}.brand-mark{width:40px;height:40px;display:block;border-radius:10px}.side-nav{padding:12px 8px}.nav-item,.nav-utility{width:100%;position:relative;display:flex;align-items:center;gap:10px;border:0;border-radius:var(--radius-md);background:transparent;color:#eef5f5c2;text-align:left;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.nav-item{min-height:38px;padding:0 11px;overflow:hidden}.nav-item:hover,.nav-utility:hover{color:#fff;background:#ffffff12}.nav-item:active,.nav-utility:active,.primary-action:active,.secondary-action:active,.icon-button:active,.dashboard-action:active,.metric-card.interactive:active,.workflow-card:active{transform:translateY(1px)}.nav-item.active{color:#fff}.nav-active-indicator{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:7px;background:#0f8b8d33;box-shadow:inset 0 0 0 1px #78e2da1f}.nav-item svg,.nav-item span:not(.nav-active-indicator){position:relative}.nav-dot{width:6px;height:6px;margin-left:auto;border-radius:999px;background:#eef5f561}.sidebar-footer{margin-top:auto;padding:12px 8px 16px;border-top:1px solid rgba(255,255,255,.09)}.nav-utility{min-height:36px;padding:0 10px}.nav-utility.danger{color:#ffd7d2}.factory-mode-entry{margin-bottom:8px;background:#0f8b8d29;color:#e9fffd;box-shadow:inset 0 0 0 1px #78e2da24}.factory-mode-entry:hover{background:#0f8b8d3d}.workspace{min-width:0;padding:18px 20px 28px}.topbar{position:sticky;top:0;z-index:var(--z-sticky);display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin:-18px -20px 16px;padding:16px 20px 12px;background:#f3f6faeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(216,222,232,.75)}.topbar-title{min-width:0;display:flex;align-items:flex-start;gap:11px}.view-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(15,139,141,.2);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-strong)}.eyebrow{margin:0 0 4px;color:var(--accent-strong);font-size:12px;font-weight:800}.topbar-copy{margin:6px 0 0;max-width:620px;color:var(--muted);font-size:13px}.topbar-actions,.inline-actions,.row-actions,.order-actions,.manual-actions,.policy-actions{display:flex;align-items:center;gap:8px}.inline-actions{flex-wrap:wrap}.topbar-actions{flex-wrap:wrap;justify-content:flex-end}.market-select{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--muted);white-space:nowrap}.market-select span{font-size:12px}.market-select select{max-width:170px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink);outline:0}.user-chip{min-height:36px;max-width:180px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink)}.user-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.primary-action,.secondary-action,.icon-button,.text-action{min-height:34px;border-radius:var(--radius-sm);border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:750;white-space:nowrap;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.primary-action{padding:0 13px;background:var(--accent);color:#fff;box-shadow:0 8px 20px #0f8b8d2e}.primary-action:hover{background:var(--accent-strong);box-shadow:0 10px 24px #0f8b8d3b}.secondary-action{padding:0 11px;background:#fff;border-color:var(--line-strong);color:var(--ink)}.secondary-action:hover,.icon-button:hover,.user-chip:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.secondary-action.full{flex:1}.secondary-action.danger-outline{color:var(--danger);border-color:#b423184d}.secondary-action.danger-outline:hover,.icon-button.danger:hover{background:var(--danger-soft);border-color:#b423186b;color:var(--danger)}.icon-button{width:36px;padding:0;background:#fff;border-color:var(--line);color:var(--ink)}.icon-button.small{width:30px;min-height:30px}.icon-button.danger{color:var(--danger);border-color:#b423184d}.danger-action{background:var(--danger);color:#fff;border-color:var(--danger)}.text-action{padding:0 2px;min-height:auto;border:0;background:transparent;color:var(--accent-strong)}.text-action.danger{color:var(--danger)}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 8px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted-strong);font-size:12px;font-weight:800;white-space:nowrap}.status-badge.success{background:var(--ok-soft);border-color:#16794a38;color:var(--ok)}.status-badge.warning,.status-badge.sandbox{background:var(--warn-soft);border-color:#9a5b1338;color:var(--warn)}.status-badge.danger{background:var(--danger-soft);border-color:#b4231838;color:var(--danger)}.status-badge.realtime{background:var(--accent-soft);border-color:#0f8b8d38;color:var(--accent-strong)}.page-motion{min-width:0}.auto-factory-page{min-height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr) minmax(104px,148px);gap:12px;padding:14px;overflow:hidden;background:linear-gradient(90deg,rgba(15,139,141,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(15,139,141,.05) 1px,transparent 1px),radial-gradient(circle at 12% 10%,rgba(15,139,141,.12),transparent 26%),#edf2f6;background-size:36px 36px,36px 36px,auto,auto}.factory-control-strip{min-width:0;display:grid;grid-template-columns:minmax(240px,auto) minmax(240px,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid rgba(194,204,217,.82);border-radius:var(--radius-md);background:#fffffff0;box-shadow:var(--shadow-md)}.factory-minimal-header{min-width:0;display:grid;grid-template-columns:minmax(210px,auto) minmax(420px,1fr) auto auto auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid rgba(194,204,217,.82);border-radius:var(--radius-md);background:#fffffff0;box-shadow:var(--shadow-md)}.factory-title-group,.factory-toolbar,.factory-run-stats{min-width:0;display:flex;align-items:center;gap:9px}.factory-title-group h1{font-size:21px}.factory-title-group .eyebrow{margin-bottom:1px}.factory-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px #0f8b8d1f}.factory-run-stats{justify-content:center;flex-wrap:wrap;color:var(--muted-strong);font-size:12px;font-weight:750}.factory-run-stats strong{color:var(--ink)}.factory-task-overview{min-width:0;display:grid;justify-self:center;width:min(860px,100%)}.factory-progress-panel{min-width:0;display:grid;gap:6px}.factory-progress-main{min-width:0;display:grid;grid-template-columns:auto minmax(130px,.7fr) minmax(180px,1.3fr);gap:8px;align-items:center}.factory-progress-main>span{color:var(--muted);font-size:11px;font-weight:850}.factory-progress-main strong{min-width:0;display:inline-flex;align-items:center;gap:6px;overflow:hidden;color:var(--ink);font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.factory-progress-main strong b{flex:0 0 auto;color:var(--muted);font-size:11px;font-weight:850}.factory-progress-meter{position:relative;height:6px;overflow:hidden;border-radius:999px;background:#64718524}.factory-progress-meter i{position:absolute;inset:0 auto 0 0;min-width:4%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#16a34a);box-shadow:0 0 14px #0f8b8d3d}.factory-progress-kpis{min-width:0;display:flex;align-items:center;gap:6px;overflow:hidden}.factory-progress-kpis span{min-width:0;display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:6px;background:var(--panel-soft);color:var(--muted-strong);font-size:10px;font-weight:820;white-space:nowrap}.factory-progress-kpis span.success{background:var(--ok-soft);color:var(--ok)}.factory-progress-kpis span.warning{background:var(--warn-soft);color:var(--warn)}.factory-progress-kpis span.danger{background:var(--danger-soft);color:var(--danger)}.factory-progress-kpis span b{color:inherit;opacity:.72}.factory-progress-kpis span strong{color:inherit;font-weight:920}.factory-start-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 18px;border:1px solid rgba(15,139,141,.22);border-radius:var(--radius-md);background:var(--accent);color:#fff;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 10px 20px #0f8b8d2e}.factory-start-button:hover:not(:disabled){background:var(--accent-strong)}.factory-start-button:disabled{cursor:not-allowed;opacity:.62}.factory-pause-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid rgba(217,119,6,.28);border-radius:var(--radius-md);background:#fff7ed;color:#b45309;font-size:14px;font-weight:900;cursor:pointer}.factory-pause-button:hover:not(:disabled){border-color:#d977066b;background:#ffedd5}.factory-pause-button:disabled{cursor:not-allowed;opacity:.5}.factory-return-icon{width:38px;height:38px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--muted-strong);cursor:pointer}.factory-return-icon:hover{border-color:#0f8b8d47;color:var(--accent-strong)}.factory-toolbar{justify-content:flex-end;flex-wrap:wrap}.factory-batch-controls{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;padding-top:2px}.factory-batch-feedback{grid-column:1 / -1;margin:0;padding:9px 12px;border-radius:var(--radius-md);font-size:13px;font-weight:780}.factory-plugin-warning{grid-column:1 / -1;margin:0;display:inline-flex;align-items:center;gap:7px;justify-self:end;padding:7px 10px;border:1px solid rgba(217,119,6,.22);border-radius:var(--radius-md);background:#fffbebf0;color:#92400e;font-size:12px;font-weight:820}.factory-batch-feedback.success{border:1px solid rgba(5,150,105,.2);background:#ecfdf5eb;color:#047857}.factory-batch-feedback.danger{border:1px solid rgba(220,38,38,.2);background:#fef2f2f0;color:#b91c1c}.factory-operator-guide{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-md);background:#f4fbfaf5;box-shadow:var(--shadow-sm)}.factory-operator-guide.warning{border-color:#d977063d;background:#fffbebf5}.factory-operator-guide.danger{border-color:#dc262638;background:#fef2f2f5}.factory-operator-guide.success{border-color:#05966933;background:#ecfdf5f5}.factory-guide-copy{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 10px;align-items:center}.factory-guide-copy strong,.factory-guide-copy p{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-guide-copy strong{color:var(--ink);font-size:14px;font-weight:900}.factory-guide-copy p{grid-column:2;margin:0;color:var(--muted-strong);font-size:12px;font-weight:760}.factory-guide-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}.factory-guide-primary,.factory-guide-secondary{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border-radius:var(--radius-sm);font-size:13px;font-weight:880;cursor:pointer;white-space:nowrap}.factory-guide-primary{border:1px solid rgba(15,139,141,.22);background:var(--accent);color:#fff;box-shadow:0 8px 18px #0f8b8d29}.factory-guide-primary:hover{background:var(--accent-strong)}.factory-guide-secondary{border:1px solid rgba(100,113,133,.22);background:#fff;color:var(--ink-soft)}.factory-guide-secondary:hover{border-color:#0f8b8d4d;color:var(--accent-strong)}.factory-save-toast{position:fixed;top:18px;right:18px;z-index:var(--z-tooltip);max-width:min(380px,calc(100vw - 28px));padding:11px 14px;border-radius:var(--radius-md);border:1px solid rgba(22,121,74,.22);background:#eaf7effa;color:var(--ok);box-shadow:var(--shadow-lg);font-size:13px;font-weight:820;line-height:1.45}.factory-save-toast.danger{border-color:#b423183d;background:#fff1effa;color:var(--danger)}.factory-tool-button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font-weight:750;white-space:nowrap;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.factory-tool-button:hover,.factory-tool-button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.factory-floor-shell{min-height:0;display:block}.factory-map-stage{position:relative;min-height:0;height:100%;overflow:hidden;border:1px solid rgba(194,204,217,.88);border-radius:var(--radius-lg);background:linear-gradient(90deg,rgba(203,213,225,.45) 1px,transparent 1px),linear-gradient(0deg,rgba(203,213,225,.45) 1px,transparent 1px),linear-gradient(135deg,#f8fafc,#eef3f7 62%,#e7edf2);background-size:40px 40px,40px 40px,auto;box-shadow:var(--shadow-lg)}.factory-scene-plane{position:absolute;left:50%;top:50%;width:1780px;height:560px;transform:translate(-50%,-50%) scale(var(--factory-scene-scale, 1));transform-origin:center center}.factory-floor-grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.7;background:linear-gradient(90deg,rgba(100,113,133,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(100,113,133,.08) 1px,transparent 1px);background-size:48px 48px}.factory-defense-route{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;pointer-events:none}.factory-route-track,.factory-route-flow{fill:none;stroke:transparent;stroke-width:1}.factory-route-spine-flow,.factory-route-repair,.factory-route-repair-flow,.factory-route-success,.factory-route-success-flow{stroke:transparent}.factory-route-node{position:absolute;z-index:3;min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border:1px solid rgba(100,113,133,.18);border-radius:999px;background:#fffffff0;color:var(--muted-strong);font-size:12px;font-weight:850;box-shadow:var(--shadow-sm)}.factory-route-node-start{left:234px;top:128px}.factory-route-node-end{left:1560px;top:127px}.factory-conveyor,.factory-belt{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#dfe6ea;border-color:#aebbc3;box-shadow:0 4px 18px #0f172a14}.factory-belt-horizontal{height:48px;border-top:2px solid #aebbc3;border-bottom:2px solid #aebbc3}.factory-belt-vertical{width:48px;border-left:2px solid #aebbc3;border-right:2px solid #aebbc3}.factory-belt:before{content:"";display:block;opacity:.86;background-image:repeating-linear-gradient(90deg,#0f8b8d,#0f8b8d 10px,#0b7476 10px,#0b7476 20px);animation:factory-belt-shift 1.6s linear infinite}.factory-belt-horizontal:before{width:100%;height:32px}.factory-belt-vertical:before{width:32px;height:100%;background-image:repeating-linear-gradient(180deg,#0f8b8d,#0f8b8d 10px,#0b7476 10px,#0b7476 20px);animation-name:factory-belt-shift-vertical}.factory-belt-success:before{background-image:repeating-linear-gradient(90deg,#16a36f,#16a36f 10px,#0f8a5d 10px,#0f8a5d 20px)}.factory-belt-repair{box-shadow:0 6px 20px #b423181f}.factory-belt-repair:before{background-image:repeating-linear-gradient(180deg,#dc2626,#dc2626 10px,#b91c1c 10px,#b91c1c 20px);animation-name:factory-belt-shift-vertical}.factory-belt-junction{position:absolute;z-index:2;width:48px;height:48px;overflow:hidden;background:#dfe6ea;box-shadow:inset 0 0 0 16px #0f8b8d29,0 4px 18px #0f172a14}.factory-belt-junction-down{border-top:2px solid #aebbc3;border-right:2px solid #aebbc3}.factory-belt-junction-right{border-left:2px solid #aebbc3;border-bottom:2px solid #aebbc3}.factory-belt-junction-up{border-right:2px solid #aebbc3;border-bottom:2px solid #aebbc3}.factory-belt-junction-final{border-top:2px solid #aebbc3;border-left:2px solid #aebbc3}.factory-conveyor-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.factory-conveyor-compat{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.factory-lane-label{position:absolute;z-index:2;display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:850;box-shadow:var(--shadow-sm)}.factory-lane-label.repair{left:1338px;top:347px;color:var(--danger);background:var(--danger-soft);border:1px solid rgba(180,35,24,.2)}.factory-lane-label.success{left:1336px;top:128px;color:var(--ok);background:var(--ok-soft);border:1px solid rgba(22,121,74,.2)}.factory-feed-bin,.factory-warehouse,.factory-fault-node{position:absolute;z-index:6;border:1px solid #b8c3ca;border-radius:6px;background:#f7fafcf5;box-shadow:0 8px 22px #0f172a1a}.factory-feed-bin{left:20px;top:50px;width:186px;height:218px;display:grid;align-content:start;justify-items:center;gap:7px;padding:12px 14px;color:var(--ink);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.factory-feed-bin:hover{transform:translateY(-2px);border-color:#0f8b8d73;box-shadow:0 12px 28px #0f8b8d24}.factory-feed-bin.node-unconfigured,.factory-station.node-unconfigured,.factory-fault-node.node-unconfigured{border-color:#d28b209e;box-shadow:0 10px 24px #d28b2024}.factory-feed-bin.node-failed-streak,.factory-station.node-failed-streak,.factory-fault-node.node-failed-streak{border-color:#b423189e;box-shadow:0 10px 24px #b4231824}.factory-feed-bin.node-interrupted,.factory-station.node-interrupted,.factory-fault-node.node-interrupted{border-color:#b4231875;box-shadow:0 10px 24px #b423181a}.factory-feed-capacity{position:absolute;top:10px;right:11px;min-width:42px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border:1px solid rgba(15,139,141,.2);border-radius:999px;background:#ffffffe6;color:var(--accent-strong);font-size:12px;font-weight:900;line-height:1}.factory-feed-bin strong,.factory-feed-next b,.factory-feed-config-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-feed-title-row{min-width:0;width:100%;display:grid;justify-items:center;gap:4px;padding:6px 48px 2px 0}.factory-feed-bin strong{max-width:100%;color:var(--accent-strong);font-size:18px;line-height:1.08;font-weight:900}.factory-feed-status{max-width:100%;overflow:hidden;color:var(--muted);font-size:11px;font-style:normal;font-weight:850;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.factory-feed-next{width:100%;min-width:0;display:grid;gap:3px;justify-items:center;padding:7px 9px;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-sm);background:var(--accent-soft)}.factory-feed-next.active{border-color:#9a5b134d;background:var(--warn-soft)}.factory-feed-next small{color:var(--muted);font-size:10.5px;font-weight:850;line-height:1.1}.factory-feed-next b{max-width:144px;color:var(--accent-strong);font-size:13px;line-height:1.18;font-weight:900}.factory-feed-config-summary{max-width:100%;color:var(--muted-strong);font-size:11px;font-weight:820;line-height:1.1}.factory-feed-meter{width:100%;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:3px}.factory-feed-meter-segment{height:6px;border-radius:999px;background:#0f172a1a;box-shadow:inset 0 0 0 1px #0f172a0a}.factory-feed-meter-segment.filled{background:linear-gradient(180deg,#0f8b8de0,#0c7072f2);box-shadow:0 0 0 1px #0f8b8d14}.factory-warehouse{right:20px;top:50px;width:198px;height:256px;display:grid;align-content:start;gap:10px;padding:16px}.factory-warehouse-title{display:flex;align-items:center;gap:8px;padding-bottom:9px;border-bottom:1px solid #b8c3ca;color:var(--ok);font-size:13px;font-weight:900}.factory-warehouse-title span{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:var(--ok-soft)}.factory-output-shelves{position:relative;left:auto;top:auto;z-index:1;width:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;border:1px solid rgba(22,121,74,.18);border-radius:6px;background:#fff;box-shadow:none}.factory-output-shelves span{aspect-ratio:1 / .72;border:1px solid rgba(22,121,74,.2);border-radius:4px;background:#ffffffc2}.factory-output-shelves span.filled{background:linear-gradient(135deg,#16794a38,#0f8b8d33),#fff;box-shadow:inset 0 -3px #16794a29}.factory-warehouse small{color:var(--muted-strong);font-size:12px;font-weight:850}.factory-fault-node{left:1348px;top:438px;width:122px;height:108px;display:grid;place-items:center;gap:6px;padding:10px;border:2px solid var(--danger);background:#fff7f6;color:var(--danger);cursor:pointer;text-align:center;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.factory-fault-node:hover,.factory-fault-node.is-open{transform:translateY(-2px);box-shadow:inset 0 0 16px #b4231829,0 10px 24px #b4231824}.factory-fault-node span{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;background:var(--danger-soft);font-size:18px;font-weight:950}.factory-fault-node strong,.factory-fault-node em{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-fault-node strong{font-size:12px}.factory-fault-node em{color:var(--danger);font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase}.factory-parcel-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none}.factory-parcel,.factory-parcel-unit{position:absolute;left:0;top:0;min-width:92px;min-height:66px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:5px 7px;align-items:center;padding:7px 9px;border:1px solid rgba(15,139,141,.26);border-radius:var(--radius-sm);background:#fff;color:var(--accent-strong);font-size:12px;font-weight:850;box-shadow:0 10px 22px #1018281f;offset-path:path("M 248 190 H 620 V 420 H 1140 V 190 H 1400");offset-distance:var(--package-progress, 0%);offset-rotate:0deg;translate:0 calc(var(--parcel-lane, 0) * 18px);transition:offset-distance .68s cubic-bezier(.16,1,.3,1),min-width .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease}.factory-parcel-crate{position:relative;grid-row:span 2;width:34px;height:30px;display:grid;place-items:center;border:1px solid rgba(154,91,19,.2);border-radius:5px;background:linear-gradient(90deg,transparent 46%,rgba(154,91,19,.16) 46% 54%,transparent 54%),linear-gradient(180deg,#f8d99c,#efbb63);color:#6f3d0b;font-size:12px;font-weight:950;box-shadow:inset 0 -4px #6f3d0b1a}.factory-parcel-crate i{position:absolute;right:-4px;top:-4px;width:10px;height:10px;border:2px solid #fff;border-radius:999px;background:var(--accent)}.factory-parcel-label,.factory-parcel-upgrade{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-parcel-label{color:var(--ink);font-size:12px}.factory-parcel-upgrade{color:var(--muted);font-size:11px;font-weight:760}.factory-parcel-data-stack{grid-column:1 / -1;display:flex;gap:4px;min-width:0}.factory-parcel-data-chip{min-width:0;max-width:46px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 5px;border-radius:4px;background:#0f8b8d1a;color:var(--accent-strong);font-size:10px;font-style:normal;font-weight:860}.factory-parcel-unit.stage-keyword_ticket,.factory-parcel-unit.stage-keyword_selected{min-width:94px;border-color:#2563eb47;background:linear-gradient(135deg,#eff6fff5,#fffffffa);box-shadow:0 10px 22px #2563eb24}.factory-parcel-unit.stage-keyword_ticket .factory-parcel-crate{border-color:#2563eb47;border-radius:4px 8px 4px 4px;background:linear-gradient(135deg,transparent 0 75%,rgba(37,99,235,.18) 76%),repeating-linear-gradient(180deg,rgba(37,99,235,.16) 0 1px,transparent 1px 7px),linear-gradient(180deg,#fff,#eaf2ff);color:#1d4ed8;box-shadow:inset 0 -3px #2563eb14}.factory-parcel-unit.stage-keyword_ticket .factory-parcel-crate i{background:#2563eb}.factory-keyword-ticket{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e3a8a;font-size:12px;font-weight:900}.factory-parcel-unit.stage-collected{min-width:108px;border-color:#0f8b8d4d;background:linear-gradient(135deg,#ecfdf5d1,#fffffff5)}.factory-parcel-unit.stage-collected .factory-parcel-crate{border-color:#0f8b8d47;background:linear-gradient(90deg,transparent 46%,rgba(15,139,141,.14) 46% 54%,transparent 54%),linear-gradient(180deg,#d6f6f0,#91d9cf);color:#0f6b6d}.factory-parcel-unit.stage-approved,.factory-parcel-unit.stage-published{border-color:#16794a52;background:#fbfffd}.factory-parcel-unit.stage-draft_ready{min-width:116px;border-color:#0f8b8d57;background:linear-gradient(135deg,#f1faf9eb,#fffffffa)}.factory-parcel-unit.stage-draft_ready .factory-parcel-crate{width:38px;background:linear-gradient(90deg,transparent 46%,rgba(15,139,141,.16) 46% 54%,transparent 54%),linear-gradient(180deg,#f8d99c,#efbb63)}.factory-parcel-unit.stage-draft_ready .factory-parcel-crate:after,.factory-parcel-unit.stage-media_ready .factory-parcel-crate:after,.factory-parcel-unit.stage-pushed_draft .factory-parcel-crate:after{content:"";position:absolute;left:5px;right:5px;bottom:-7px;height:8px;border-radius:2px;background:#0f8b8d33}.factory-parcel-unit.stage-media_ready{min-width:122px;border-color:#2563eb52;background:linear-gradient(135deg,#eaf1ffd1,#fffffff5)}.factory-parcel-unit.stage-media_ready .factory-parcel-crate{width:40px;background:linear-gradient(135deg,rgba(37,99,235,.18),transparent 34%),linear-gradient(90deg,transparent 46%,rgba(37,99,235,.16) 46% 54%,transparent 54%),linear-gradient(180deg,#dbeafe,#93c5fd)}.factory-parcel-unit.stage-media_ready .factory-parcel-crate i{background:var(--info)}.factory-parcel-unit.stage-pushed_draft{min-width:128px;border-color:#1118273d;background:linear-gradient(135deg,#f3f4f6f5,#fffffffa)}.factory-parcel-unit.stage-pushed_draft .factory-parcel-crate{width:42px;background:linear-gradient(90deg,transparent 46%,rgba(17,24,39,.16) 46% 54%,transparent 54%),linear-gradient(180deg,#e5e7eb,#9ca3af);color:#111827}.factory-parcel-unit.stage-pushed_draft .factory-parcel-crate i{background:#111827}.factory-parcel-unit.stage-published .factory-parcel-crate{width:44px;background:linear-gradient(90deg,transparent 46%,rgba(22,121,74,.16) 46% 54%,transparent 54%),linear-gradient(180deg,#bbf7d0,#4ade80);color:#14532d}.factory-parcel-unit.stage-published .factory-parcel-crate i{background:var(--ok)}.factory-parcel-unit.stage-repair{border-color:#b4231847;background:var(--danger-soft);color:var(--danger);offset-path:path("M 1400 244 V 488");offset-distance:100%}.factory-parcel-unit.stage-published{offset-path:path("M 1400 190 H 1574");offset-distance:100%}.parcel-1{animation-delay:var(--parcel-delay, 0s)}.parcel-2{animation-delay:var(--parcel-delay, -2.1s)}.parcel-3{animation-delay:var(--parcel-delay, -4.2s)}.parcel-4{animation-delay:var(--parcel-delay, -6.3s)}.parcel-5{animation-delay:var(--parcel-delay, -8.4s)}.parcel-6{animation-delay:var(--parcel-delay, -10.5s)}.parcel-7{animation-delay:var(--parcel-delay, -12.6s)}.factory-station-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.factory-station{position:absolute;min-width:0;width:122px;min-height:108px;display:grid;grid-template-rows:42px minmax(0,1fr);align-content:start;gap:6px;padding:8px;border:2px solid rgba(100,113,133,.24);border-radius:6px;background:#eff5f8f5;color:var(--ink);text-align:center;box-shadow:0 8px 22px #1018281a;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out);pointer-events:auto}.factory-station:hover,.factory-station.selected{transform:translateY(-3px);border-color:#6471856b;box-shadow:0 16px 34px #10182824}.factory-station.machine-collection{left:386px;top:136px}.factory-station.machine-draft{left:560px;top:248px}.factory-station.machine-media{left:805px;top:366px}.factory-station.machine-push{left:1050px;top:248px}.factory-station.machine-publish{left:1316px;top:136px}.factory-machine-body{position:relative;min-width:0;min-height:42px;display:block;overflow:hidden;border:1px solid rgba(15,23,42,.1);border-radius:var(--radius-sm);background:linear-gradient(180deg,rgba(255,255,255,.7),transparent 48%),linear-gradient(135deg,#e2e8f0f5,#cbd5e1eb);box-shadow:inset 0 -8px #0f172a0f}.factory-machine-icon{position:absolute;left:8px;top:7px;width:29px;height:29px;display:grid;place-items:center;border-radius:8px;background:#fff;color:var(--accent-strong);box-shadow:var(--shadow-sm)}.factory-machine-roller{position:absolute;left:45px;right:8px;bottom:9px;height:9px;border-radius:999px;background:repeating-linear-gradient(90deg,#0f8b8d47 0,#0f8b8d47 8px,#0f8b8d1a 8px,#0f8b8d1a 14px),#ffffffb8;animation:conveyor-shift 2.4s linear infinite}.factory-machine-scan{position:absolute;top:0;bottom:0;width:22px;background:linear-gradient(90deg,transparent,rgba(15,139,141,.22),transparent);opacity:0}.factory-station.running .factory-machine-scan{animation:factory-scan-sweep 1.35s var(--ease-out) infinite;opacity:1}.factory-station.machine-media .factory-machine-body{background:linear-gradient(135deg,#eaf1fff0,#ffffffb3),#dbe7ea}.factory-station.machine-publish .factory-machine-body{background:linear-gradient(135deg,#eaf7eff5,#ffffffb8),#dbe7ea}.factory-station-copy{min-width:0;display:grid;gap:3px}.factory-station-copy strong{display:inline-flex;align-items:center;justify-content:space-between;gap:6px}.factory-station-copy strong>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-station strong,.factory-station small,.factory-station em{position:relative;z-index:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-station strong{font-size:12px}.factory-station-state{flex:0 0 auto;margin:0!important;padding:1px 5px!important;border:1px solid rgba(100,113,133,.18);border-radius:999px!important;background:#ffffffd1!important;color:var(--muted-strong)!important;font-size:9px!important;line-height:1.35}.factory-station-state.running{border-color:#0f8b8d3d;background:var(--accent-soft)!important;color:var(--accent-strong)!important}.factory-station-state.succeeded{border-color:#16794a38;background:var(--ok-soft)!important;color:var(--ok)!important}.factory-station-state.warning{border-color:#9a5b1338;background:var(--warn-soft)!important;color:var(--warn)!important}.factory-station-state.failed{border-color:#b4231838;background:var(--danger-soft)!important;color:var(--danger)!important}.factory-station small{color:var(--muted);font-size:10px;font-weight:700}.factory-station em{width:auto;margin-top:2px;padding:2px 5px;border-radius:5px;background:var(--panel-soft);color:var(--muted-strong);font-size:10px;font-style:normal;font-weight:800}.factory-station-submetric{color:var(--accent-strong)!important;background:var(--accent-soft)!important}.factory-station-light{position:absolute;top:12px;right:12px;z-index:2;width:11px;height:11px;border-radius:999px;background:var(--muted);box-shadow:0 0 0 4px #6471851a}.factory-station.succeeded .factory-station-light{background:#22c55e;box-shadow:0 0 0 4px #16794a14}.factory-station.succeeded{border-color:#16794a42}.factory-station.running{border-color:#0f8b8db3;box-shadow:0 16px 34px #0f8b8d29}.factory-station.running .factory-station-light{background:var(--accent);box-shadow:0 0 0 4px #0f8b8d24,0 0 20px #0f8b8d99;animation:factory-pulse 1.4s ease-out infinite}.factory-station.warning .factory-station-light{background:#d28b20;box-shadow:0 0 0 4px #9a5b131f}.factory-station.failed{border-color:#b4231847}.factory-station.failed .factory-station-light{background:var(--danger);box-shadow:0 0 0 4px #b423181f}.factory-station.node-unconfigured .factory-station-light{background:#d28b20;box-shadow:0 0 0 4px #d28b2024}.factory-station.node-failed-streak .factory-station-light{background:var(--danger);box-shadow:0 0 0 4px #b4231824,0 0 18px #b423186b}.factory-station.node-interrupted .factory-station-light{background:var(--danger);box-shadow:0 0 0 4px #b423181f}.factory-node-alert{position:absolute;right:-8px;top:-8px;z-index:12;width:24px;height:24px;display:grid;place-items:center;border:2px solid #fff;border-radius:999px;font-size:14px;font-weight:950;line-height:1;box-shadow:0 8px 18px #0f172a24}.factory-node-alert.warning{background:#f59e0b;color:#fff7ed}.factory-node-alert.danger{background:var(--danger);color:#fff}.factory-report-grid div{min-width:0;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-report-grid span{display:block;color:var(--muted);font-size:12px;font-weight:750}.factory-report-grid strong{display:block;margin-top:3px;font-size:18px}.factory-repair-card{display:grid;gap:8px;padding:12px;border:1px solid rgba(180,35,24,.18);border-radius:var(--radius-md);background:var(--danger-soft)}.factory-repair-card p{margin-bottom:0}.factory-station-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.factory-station-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop);display:grid;place-items:center;padding:24px;background:#10182875}.factory-station-detail-panel{width:min(620px,100%);max-height:min(720px,calc(100vh - 48px));overflow:auto;display:grid;gap:14px;padding:18px;border:1px solid rgba(194,204,217,.92);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg)}.factory-feed-detail-panel{width:min(940px,100%);max-height:none;overflow:visible}.factory-station-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.factory-station-detail-summary div{min-width:0;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-station-detail-summary span{display:block;color:var(--muted);font-size:12px;font-weight:750}.factory-station-detail-summary strong{display:block;margin-top:3px;overflow:hidden;color:var(--ink);font-size:16px;text-overflow:ellipsis;white-space:nowrap}.factory-station-detail-copy{margin-bottom:0}.factory-feed-detail-layout{display:grid;gap:14px}.factory-feed-detail-toolbar{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(190px,.75fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.factory-feed-detail-toolbar label{min-width:0;display:grid;gap:5px;margin:0}.factory-feed-count-field{min-width:0;display:grid;gap:5px}.factory-feed-detail-toolbar label span,.factory-feed-count-field>span{color:var(--muted);font-size:12px;font-weight:800}.factory-feed-detail-toolbar input,.factory-feed-detail-toolbar select{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;font-weight:850}.factory-feed-count-options{min-height:36px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.factory-feed-count-options .segmented-chip{min-height:36px;padding-inline:8px}.factory-feed-detail-toolbar button{min-height:36px;white-space:nowrap}.factory-feed-queue{display:grid;gap:8px}.factory-feed-queue-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1.1fr) minmax(0,1fr) minmax(120px,.6fr) auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-feed-queue-card.next{border-color:#9a5b134d;background:linear-gradient(180deg,#fff5e2d1,#fffffff5);box-shadow:inset 0 0 0 1px #9a5b1314}.factory-feed-queue-card strong,.factory-feed-queue-card span,.factory-feed-queue-card em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-feed-queue-card strong{color:var(--ink);font-size:13px}.factory-feed-queue-card em{color:var(--muted);font-size:12px;font-style:normal;font-weight:750}.factory-pipeline-station-layout{display:grid;gap:14px}.factory-pipeline-station-hero,.factory-station-risk-panel{display:grid;gap:7px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.factory-pipeline-station-hero h3,.factory-station-risk-panel strong,.factory-pipeline-station-hero p,.factory-station-risk-panel p{margin:0}.factory-station-signal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.factory-station-signal-grid section{min-width:0;display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-station-signal-grid span{color:var(--muted);font-size:12px;font-weight:800}.factory-station-signal-grid strong{min-width:0;overflow:hidden;color:var(--ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.factory-station-signal-grid p{margin:0;color:var(--muted);font-size:12px}.factory-station-flow-list{display:grid;gap:7px}.factory-station-flow-list article{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.factory-station-flow-list span{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:900}.factory-station-flow-list strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.factory-station-risk-panel.success{border-color:#16794a33;background:var(--ok-soft)}.factory-station-risk-panel.warning,.factory-station-risk-panel.realtime{border-color:#9a5b1333;background:var(--warn-soft)}.factory-station-risk-panel.danger{border-color:#b4231838;background:var(--danger-soft)}.factory-real-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.factory-real-data-grid section,.factory-real-data-grid label{min-width:0;display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-real-data-grid label{margin:0}.factory-real-data-grid label input,.factory-real-data-grid label select{width:100%;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;font-weight:850}.factory-feed-config-grid{grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(120px,.8fr))}.factory-real-data-grid span{color:var(--muted);font-size:12px;font-weight:800}.factory-real-data-grid strong{color:var(--ink);font-size:20px;font-weight:900}.factory-real-data-grid p{margin:0;color:var(--muted);font-size:12px}.factory-task-live-list,.factory-workflow-list{display:grid;gap:8px}.factory-profile-choice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.factory-profile-choice{min-width:0;display:grid;gap:6px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft);color:inherit;text-align:left;cursor:pointer}.factory-profile-choice:hover{border-color:#0f8b8d52;background:#fff}.factory-profile-choice.selected{border-color:#0f8b8d75;box-shadow:0 0 0 3px #0f8b8d1a}.factory-profile-choice strong,.factory-profile-choice small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-profile-choice strong{color:var(--ink);font-size:13px}.factory-profile-choice small{color:var(--muted);font-size:12px;font-weight:750}.factory-detail-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.factory-live-list-head{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.factory-live-list-head h4,.factory-live-list-head p{margin:0}.factory-live-list-head h4{color:var(--ink);font-size:14px}.factory-live-list-head p{color:var(--muted);font-size:12px;font-weight:750}.factory-task-live-list article{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-workflow-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-task-live-list article>div:first-child{min-width:0;display:grid;gap:5px}.factory-workflow-row>div:first-child{min-width:0;display:grid;gap:5px}.factory-task-live-list article strong,.factory-task-live-list article p,.factory-task-live-list article small,.factory-workflow-row strong,.factory-workflow-row p,.factory-workflow-row small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-task-live-list article strong,.factory-workflow-row strong{color:var(--ink);font-size:13px}.factory-task-live-list article p,.factory-task-live-list article small,.factory-workflow-row p,.factory-workflow-row small{margin:0;color:var(--muted);font-size:12px;font-weight:750}.factory-task-live-list article small,.factory-workflow-row small{grid-column:1 / -1}.factory-task-live-list dl,.factory-workflow-row dl{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0}.factory-task-live-list dl div,.factory-workflow-row dl div{min-width:0;padding:7px 8px;border:1px solid rgba(194,204,217,.82);border-radius:var(--radius-sm);background:#fff}.factory-task-live-list dt,.factory-task-live-list dd,.factory-workflow-row dt,.factory-workflow-row dd{margin:0}.factory-task-live-list dt,.factory-workflow-row dt{color:var(--muted);font-size:11px;font-weight:800}.factory-task-live-list dd,.factory-workflow-row dd{min-width:0;overflow:hidden;color:var(--ink);font-size:14px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.factory-image-slot-strip{min-width:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.factory-image-slot-strip span{width:14px;height:14px;border:1px solid rgba(30,80,91,.16);border-radius:999px;background:#fff}.factory-image-slot-strip span.succeeded{border-color:#16794a4d;background:var(--success)}.factory-image-slot-strip span.generating{border-color:#0f8b8d57;background:var(--accent);animation:factory-status-pulse 1.3s ease-in-out infinite}.factory-image-slot-strip span.failed{border-color:#b4231857;background:var(--danger)}.factory-image-slot-strip span.queued{background:var(--panel-soft)}.factory-station-pagination{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--muted);font-size:12px;font-weight:800}.factory-live-empty{margin:0;padding:12px;border:1px dashed rgba(111,126,145,.36);border-radius:var(--radius-md);background:var(--panel-soft);color:var(--muted);font-size:13px;font-weight:750}.factory-live-empty.danger{border-color:#b423183d;background:var(--danger-soft);color:var(--danger)}.factory-event-stream{min-width:0;min-height:0;max-height:148px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-content:start;gap:8px;padding:10px;border:1px solid rgba(194,204,217,.82);border-radius:var(--radius-md);background:#fffffff0;box-shadow:var(--shadow-md)}.factory-event{min-width:0;display:grid;gap:5px;min-height:62px;padding:8px 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.factory-event>span{color:var(--muted);font-size:12px;font-weight:800}.factory-event strong{min-width:0;overflow:hidden;color:var(--ink-soft);font-size:12px;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.factory-event .status-badge{width:fit-content}.factory-tool-overlay{position:fixed;z-index:var(--z-modal);top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#10182842}.factory-tool-panel{position:relative;width:min(720px,100%);max-height:calc(100dvh - 48px);overflow:auto;padding:16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg)}.factory-roulette-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:center}.factory-roulette-overlay,.factory-mega-roulette-overlay,.factory-mega-roulette-panel{width:min(1560px,calc(100vw - 32px))}.factory-mega-roulette-panel{max-height:calc(100dvh - 18px);overflow:hidden;padding:12px;background:linear-gradient(180deg,#f7fdfcfa,#f8fafcfa),var(--panel)}.factory-mega-roulette-layout,.factory-wheel-only-layout{min-height:min(920px,calc(100dvh - 42px))}.factory-mega-wheel-stage{min-width:0;position:relative;display:grid;grid-template-rows:minmax(520px,1fr);place-items:center;padding:18px;overflow:hidden;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 48%,rgba(15,139,141,.13),transparent 34%),linear-gradient(90deg,rgba(15,139,141,.06) 1px,transparent 1px),linear-gradient(0deg,rgba(15,139,141,.05) 1px,transparent 1px),#f8fcfb;background-size:auto,36px 36px,36px 36px,auto;box-shadow:inset 0 0 0 1px #fffc}.factory-mega-wheel-shell{position:relative;min-height:640px;display:grid;place-items:center;isolation:isolate}.factory-mega-wheel-shell.spinning .factory-mega-wheel-hub{border-color:#0f8b8d5c}.factory-roulette-close{position:absolute;z-index:8;top:16px;right:16px}.factory-mega-wheel-host{width:min(900px,86vmin);aspect-ratio:1;border:10px solid #fff;border-radius:999px;overflow:hidden;background:#fff;box-shadow:0 24px 70px #10182829,inset 0 0 0 1px #0f8b8d33;cursor:grab}.factory-mega-wheel-host canvas{width:100%;height:100%}.factory-roulette-empty{position:absolute;z-index:6;left:50%;top:50%;width:min(360px,calc(100% - 48px));display:grid;justify-items:center;gap:9px;padding:20px;border:1px solid rgba(217,119,6,.26);border-radius:var(--radius-lg);background:#fffbebf5;color:#7c2d12;text-align:center;box-shadow:0 20px 50px #10182829;transform:translate(-50%,-50%)}.factory-wheel-spin-button{position:absolute;z-index:7;right:clamp(18px,3vw,40px);bottom:clamp(18px,3vw,40px);width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,139,141,.28);border-radius:999px;background:var(--accent);color:#fff;box-shadow:0 14px 28px #0f8b8d3d;cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.factory-wheel-spin-button:hover{background:var(--accent-strong);box-shadow:0 18px 34px #0f8b8d47;transform:translateY(-1px)}.factory-wheel-spin-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.factory-roulette-empty strong{color:#7c2d12;font-size:16px}.factory-roulette-empty p{margin:0;color:#92400e;font-size:13px;line-height:1.6}.factory-mega-wheel-pointer{content:"";position:absolute;z-index:4;right:calc(50% - min(450px,43vmin) - 6px);top:calc(50% + 4px);width:0;height:0;border-top:18px solid transparent;border-bottom:18px solid transparent;border-right:34px solid var(--accent);filter:drop-shadow(0 6px 10px rgba(15,139,141,.25));transform:translateY(-50%)}.factory-mega-wheel-hub{position:absolute;z-index:5;width:min(176px,31vw);min-height:132px;display:grid;place-items:center;gap:4px;padding:18px;border:1px solid rgba(15,139,141,.18);border-radius:999px;background:#fff;color:var(--ink);text-align:center;box-shadow:0 16px 34px #10182829}.factory-mega-wheel-hub span,.factory-mega-wheel-hub small{color:var(--muted);font-size:12px;font-weight:800}.factory-mega-wheel-hub em{padding:3px 7px;border-radius:999px;background:#0f8b8d1a;color:var(--accent-strong);font-size:11px;font-style:normal;font-weight:820}.factory-mega-wheel-hub strong{max-width:120px;overflow:hidden;color:var(--accent-strong);font-size:18px;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.factory-station-result-strip b{max-width:110px;overflow:hidden;padding:4px 8px;border-radius:999px;background:#0f8b8d1a;color:var(--accent-strong);font-size:12px;font-style:normal;font-weight:820;text-overflow:ellipsis;white-space:nowrap}.factory-toggle-row{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft);color:var(--ink-soft);font-size:13px;font-weight:780}.factory-toggle-row input{width:16px;height:16px;accent-color:var(--accent)}.factory-roulette-run-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;padding:12px;border:1px solid rgba(15,139,141,.22);border-radius:var(--radius-md);background:linear-gradient(180deg,#0f8b8d14,#0f8b8d08)}.factory-roulette-run-card span{color:var(--muted);font-size:12px;font-weight:800}.factory-roulette-run-card strong{color:var(--accent-strong);font-size:20px}.factory-roulette-run-card button{grid-column:1 / -1}.factory-station-result-strip{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.factory-tool-stack,.factory-repair-list{display:grid;gap:10px}.factory-repair-list,.factory-report-grid{margin-top:12px}.factory-selection-list article,.factory-repair-list article{display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-repair-card{align-content:start}.factory-repair-card-head{min-width:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.factory-repair-card-head>span:last-child{color:var(--muted);font-size:12px;font-weight:850}.factory-repair-advice{display:grid;gap:7px;margin-top:4px}.factory-repair-advice div{min-width:0;padding:8px 9px;border:1px solid rgba(194,204,217,.72);border-radius:var(--radius-sm);background:#fff}.factory-repair-advice span{display:block;margin-bottom:3px;color:var(--muted);font-size:11px;font-weight:900}.factory-repair-advice p{margin:0;color:var(--ink);font-size:12px;font-weight:760;line-height:1.45}.factory-repair-card-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}.factory-tool-note{margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft);color:var(--muted-strong);font-size:12px;font-weight:700}.factory-tool-note.warning{border-color:#9a5b1333;background:var(--warn-soft);color:var(--warn)}.factory-roulette-controls{display:grid;grid-template-columns:auto minmax(160px,1fr);align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.factory-roulette-controls span{color:var(--muted);font-size:12px;font-weight:760}.factory-roulette-controls select{width:100%;min-height:34px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;font-weight:760}.factory-roulette-controls select{padding:0 10px}.factory-selection-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.factory-empty-state{margin:0;padding:14px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--panel-soft);color:var(--muted-strong);font-size:13px;font-weight:720}.factory-report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}@keyframes factory-belt-shift{0%{background-position:0 0}to{background-position:40px 0}}@keyframes factory-belt-shift-vertical{0%{background-position:0 0}to{background-position:0 40px}}@keyframes conveyor-shift{0%{background-position:0 0}to{background-position:60px 0}}@keyframes factory-pulse{0%{transform:scale(1);opacity:1}70%{transform:scale(1.55);opacity:.45}to{transform:scale(1);opacity:1}}@keyframes factory-parcel-flow{0%{transform:translate(-10px)}50%{transform:translate(22px)}to{transform:translate(-10px)}}@keyframes factory-parcel-route{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes factory-parcel-repair-route{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes factory-scan-sweep{0%{left:-28px;opacity:0}16%{opacity:1}82%{opacity:1}to{left:100%;opacity:0}}.dashboard-page,.collection-page{display:grid;gap:14px}.workflow-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.workflow-card{min-width:0;min-height:78px;display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.workflow-card:hover,.metric-card.interactive:hover,.dashboard-action:hover{border-color:#0f8b8d5c;box-shadow:var(--shadow-md);transform:translateY(-1px)}.workflow-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-strong)}.workflow-card.planned .workflow-icon{background:var(--panel-soft);color:var(--muted-strong)}.workflow-card strong,.workflow-card small,.dashboard-action strong,.dashboard-action small{display:block}.workflow-card small,.dashboard-action small{margin-top:3px;color:var(--muted);font-size:12px}.summary-grid,.collection-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-card{position:relative;min-width:0;min-height:104px;padding:13px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:left;color:var(--ink)}.metric-card.interactive{cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.metric-card .metric-label,.metric-card small,.policy-label{display:block;color:var(--muted)}.metric-card strong{display:block;margin:7px 0 5px;font-size:22px;line-height:1.15}.metric-card small{padding-right:28px}.metric-icon{position:absolute;right:12px;top:12px;width:30px;height:30px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-strong)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}.panel{min-width:0;padding:15px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:13px}.panel-heading.compact{align-items:center}.panel-heading p{margin-bottom:0;color:var(--muted);font-size:13px}.action-list{display:grid;gap:8px}.dashboard-action{min-height:58px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.dashboard-action>span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--panel-soft);color:var(--accent-strong)}.dashboard-action.static{cursor:default}.dashboard-action.static:hover{border-color:var(--line);box-shadow:none;transform:none}.ai-settings-grid{grid-template-columns:minmax(280px,.9fr) minmax(280px,.7fr)}.ai-settings-card{align-self:start}.ai-settings-shell,.ai-settings-wide-card{display:grid;gap:14px}.ai-settings-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}.ai-settings-channel-card{min-width:0;display:grid;align-content:start;gap:11px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg,#fff,#fbfcfd);box-shadow:var(--shadow-sm)}.ai-channel-card-head{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px}.ai-channel-card-head>span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-strong)}.ai-channel-card-head h3{margin:0;color:var(--ink);font-size:15px;line-height:1.2}.ai-channel-card-head small{display:block;margin-top:3px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.ai-model-picker input,.ai-model-select{font-family:inherit}.ai-key-mask{display:inline-flex;align-items:center;min-height:16px;color:var(--muted);font-size:12px;font-weight:700;overflow-wrap:anywhere}.ai-channel-card-actions,.ai-settings-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ai-channel-card-actions{justify-content:flex-end}.ai-settings-actions{justify-content:flex-start;padding-top:2px}.ai-settings-actions small{color:var(--muted);font-size:12px}.ai-key-status{display:grid;grid-template-columns:minmax(110px,.3fr) minmax(0,1fr);gap:8px 12px;margin-bottom:13px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.ai-key-status span{color:var(--muted);font-size:12px;font-weight:800}.ai-key-status strong{min-width:0;overflow-wrap:anywhere}.ai-key-form{margin-top:10px}.market-grid{display:grid;gap:8px}.market-tile{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.market-tile span{color:var(--muted);font-size:12px}.placeholder-module{min-height:min(560px,calc(100vh - 126px));display:grid;align-content:center;justify-items:center;gap:18px;padding:42px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm);text-align:center}.placeholder-visual{position:relative;width:88px;height:88px;display:grid;place-items:center;border:1px solid rgba(15,139,141,.16);border-radius:24px;background:var(--accent-soft);color:var(--accent-strong)}.placeholder-visual span{position:absolute;right:18px;top:18px;width:9px;height:9px;border-radius:999px;background:var(--warn)}.placeholder-copy{max-width:420px}.placeholder-copy p{margin-bottom:0}.placeholder-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.placeholder-steps span{min-height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;font-weight:750}.collection-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.collection-hero-copy{min-width:0}.collection-hero-copy h1{margin:8px 0 10px}.workflow-pill,.workflow-steps,.workflow-step{display:inline-flex;align-items:center}.workflow-pill{gap:6px;min-height:28px;padding:0 10px;border:1px solid rgba(15,139,141,.2);border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:800}.workflow-steps{flex-wrap:wrap;gap:8px}.workflow-step{min-height:28px;padding:0 9px;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;font-weight:800}.workflow-step.active{background:var(--accent-soft);color:var(--accent-strong)}.workflow-step.done{background:var(--ok-soft);color:var(--ok)}.workflow-line{width:20px;height:1px;background:var(--line-strong)}.collection-hero-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.collection-command-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-sm)}.command-status{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--muted-strong);font-size:13px}.command-status strong{color:var(--ink)}.ok-text{color:var(--ok)}.collection-console-grid{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:14px;align-items:stretch}.collection-create-panel,.collection-status-panel{min-height:100%}.collection-create-panel{display:grid;align-content:start}.collection-task-form.compact{grid-template-columns:1fr;margin-bottom:0}.split-fields.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-create-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.collection-status-panel{display:grid;gap:12px}.collection-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.status-tile{min-width:0;min-height:100px;display:grid;align-content:space-between;gap:5px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.status-tile:hover{border-color:#0f8b8d57;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.status-tile span,.status-tile small{color:var(--muted);font-size:12px}.status-tile strong{font-size:26px;line-height:1}.status-tile.attention{border-color:#9a5b133d;background:var(--warn-soft)}.status-tile.success{border-color:#16794a38;background:var(--ok-soft)}.collection-status-footer{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:12px}.collection-status-footer span{min-height:26px;display:inline-flex;align-items:center;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft)}.collection-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px;border:1px solid var(--line);border-radius:var(--radius-md);background:#eaf0f6}.collection-tab{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--muted-strong);font-weight:800;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.collection-tab:hover{background:#ffffffa8;color:var(--ink)}.collection-tab.active{border-color:#0f8b8d38;background:#fff;color:var(--accent-strong);box-shadow:var(--shadow-sm)}.collection-tab strong{min-width:28px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 8px;border-radius:999px;background:var(--panel-soft);color:var(--ink);font-size:12px}.collection-tab.active strong{background:var(--accent-soft);color:var(--accent-strong)}.collection-tab-panel[hidden]{display:none}.collection-tab-panel{animation:tab-panel-in var(--motion-base) var(--ease-out)}@keyframes tab-panel-in{0%{opacity:0;transform:translateY(6px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.candidate-workbench{display:grid;gap:14px}.candidate-command-bar{background:linear-gradient(180deg,#fff,#fbfcfd)}.candidate-filter-panel{padding:12px}.candidate-filters{display:grid;grid-template-columns:140px 140px minmax(180px,1fr) 120px auto;gap:10px;align-items:end}.candidate-filters .form-field{margin-bottom:0}.candidate-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);gap:14px;align-items:start}.candidate-list-panel{min-width:0}.candidate-list{display:grid;gap:9px}.candidate-card{min-width:0;display:grid;grid-template-columns:24px 54px minmax(0,1fr) 72px auto;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.candidate-select{display:grid;place-items:center;min-height:54px}.candidate-list-tools{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.select-visible{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--muted-strong);font-size:12px;font-weight:700}.candidate-card:hover,.candidate-card.active{border-color:#0f8b8d57;box-shadow:var(--shadow-md);transform:translateY(-1px)}.candidate-card .product-thumb{width:54px;height:54px}.candidate-main{min-width:0;display:grid;gap:6px}.candidate-title-row{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.candidate-title-row strong{min-width:0;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.product-task-label{min-width:0;width:fit-content;max-width:min(100%,320px);min-height:22px;display:inline-flex;align-items:center;gap:5px;padding:0 8px;border:1px solid rgba(15,139,141,.18);border-radius:999px;background:#0f8b8d14;color:#0b6264;font-size:12px;font-weight:750;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-task-label svg{flex:0 0 auto}.candidate-meta-line,.candidate-metrics{min-width:0;display:flex;flex-wrap:wrap;gap:6px}.candidate-meta-line span,.candidate-metrics span{min-height:22px;display:inline-flex;align-items:center;max-width:220px;padding:0 8px;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candidate-score{min-height:54px;display:grid;place-items:center;align-content:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.candidate-score span{font-size:20px;font-weight:850;line-height:1}.candidate-score small{margin-top:4px;color:var(--muted);font-size:11px}.candidate-actions{justify-content:flex-end}.candidate-card.skeleton-card{grid-template-columns:54px minmax(0,1fr) 80px;cursor:default}.skeleton.thumb{width:54px;height:54px;border-radius:var(--radius-sm)}.candidate-empty{min-height:190px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--panel-soft)}.candidate-drawer{position:sticky;top:14px;display:grid;gap:13px;max-height:calc(100vh - 108px);overflow-y:auto}.candidate-drawer.empty{align-content:center;min-height:260px}.candidate-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.candidate-drawer-head h2{margin-top:8px;display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.candidate-preview{display:grid;grid-template-columns:64px minmax(0,1fr);gap:11px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.candidate-preview .product-thumb{width:64px;height:64px}.candidate-preview strong,.candidate-preview span{display:block}.candidate-preview span{margin-top:4px;color:var(--muted);font-size:12px}.candidate-section{display:grid;gap:8px}.candidate-section h3{margin-bottom:0}.candidate-ai-box{min-height:70px;display:grid;align-content:center;gap:4px;padding:12px;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-strong)}.candidate-ai-box strong{font-size:22px;line-height:1}.candidate-ai-box span{color:var(--accent-strong);font-size:12px}.dimension-score-list{display:grid;gap:7px}.dimension-score-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.dimension-score-row div{min-width:0;display:grid;gap:3px}.dimension-score-row strong,.dimension-score-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dimension-score-row span{color:var(--muted);font-size:12px}.dimension-score-row b{display:grid;place-items:center;min-height:34px;border-radius:var(--radius-sm);background:var(--panel-soft);color:var(--accent-strong);font-size:15px}.risk-chip-row{display:grid;gap:5px}.candidate-drawer-actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:8px;background:var(--panel)}.auto-publish-workbench{display:grid;gap:14px}.auto-publish-command-bar{background:linear-gradient(180deg,#fff,#fbfcfd)}.auto-publish-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.auto-publish-style-strip{display:grid;gap:12px;overflow:hidden}.draft-cache-notice{display:flex;align-items:center;gap:8px;margin-top:-2px;padding:10px 12px;border:1px solid rgba(245,158,11,.28);border-radius:var(--radius-md);background:#fffbebc7;color:#7c4a03;font-size:13px;font-weight:650}.selected-style-summary{min-width:0;display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1fr) auto;align-items:center;gap:14px}.selected-style-summary>div{min-width:0;display:grid;gap:6px}.selected-style-summary strong,.selected-style-summary small,.selected-style-summary p{min-width:0;overflow:hidden;text-overflow:ellipsis}.selected-style-summary strong{color:var(--ink);font-size:18px;line-height:1.2;white-space:nowrap}.selected-style-summary small,.selected-style-summary p{margin:0;color:var(--muted);font-size:12px}.selected-style-summary p{color:var(--ink-soft);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.style-selector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(164px,1fr));gap:8px}.style-choice-card{min-width:0}.style-choice-card>button{width:100%;min-width:0;display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out)}.style-choice-card>button:hover,.style-choice-card.active>button{border-color:#0f8b8d57;background:var(--accent-soft);box-shadow:var(--shadow-md);transform:translateY(-1px)}.style-choice-card strong,.style-choice-card small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.style-choice-card small{color:var(--muted);font-size:12px}.style-picker-overlay{align-items:center}.style-picker-panel{z-index:var(--z-modal);width:min(960px,100%);max-height:min(760px,calc(100vh - 44px));overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg)}.style-picker-body{min-height:0;overflow:auto;padding:14px 16px 16px}.style-picker-groups{display:grid;gap:14px}.style-picker-group{display:grid;gap:8px;min-width:0}.style-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.style-group-heading strong{color:var(--ink);font-size:13px}.style-group-heading span{min-width:26px;min-height:22px;display:inline-grid;place-items:center;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-weight:750}.style-picker-footer{position:sticky;bottom:-16px;display:flex;justify-content:flex-end;gap:8px;margin:14px -16px -16px;padding:12px 16px;border-top:1px solid var(--line);background:#fffffff0}.style-manager-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop);display:flex;justify-content:flex-end;background:#1018205c}.style-manager-panel{z-index:var(--z-modal);width:min(1120px,calc(100vw - 28px));height:100dvh;max-height:100dvh;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);border-left:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow-lg)}.style-manager-layout{min-height:0;display:grid;grid-template-columns:minmax(330px,.95fr) minmax(340px,.8fr);gap:14px;overflow:auto;padding:14px;background:var(--paper)}.style-manager-library,.style-manager-layout .listing-style-editor{min-width:0;display:grid;align-content:start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-sm)}.style-manager-library{min-height:0}.style-manager-layout .listing-style-editor{position:sticky;top:0;max-height:calc(100vh - 94px);overflow-y:auto}.auto-publish-panel[hidden],.auto-publish-draft-layout[hidden],.publish-records[hidden]{display:none}.auto-publish-panel,.auto-publish-draft-layout{animation:tab-panel-in var(--motion-base) var(--ease-out)}.auto-publish-filters{margin-bottom:12px}.auto-publish-status-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:12px}.auto-publish-metric{min-width:0;display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.auto-publish-metric:hover{border-color:#0f8b8d57;box-shadow:var(--shadow-md);transform:translateY(-1px)}.auto-publish-metric span,.auto-publish-metric small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-publish-metric span{color:var(--muted-strong);font-size:12px;font-weight:800}.auto-publish-metric strong{color:var(--ink);font-size:22px;line-height:1.05}.auto-publish-metric small{color:var(--muted);font-size:12px}.auto-publish-flow-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;padding:12px}.auto-publish-flow-step{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);gap:2px 9px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left}.auto-publish-flow-step.active{border-color:#0f8b8d59;background:var(--accent-soft)}.auto-publish-flow-step>span{grid-row:1 / span 2;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--panel-soft);color:var(--accent-strong);font-weight:900}.auto-publish-flow-step strong,.auto-publish-flow-step small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-publish-flow-step small{color:var(--muted);font-size:12px}.auto-publish-switch-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:12px;padding:12px 14px}.auto-publish-switch-copy{min-width:0;display:grid;gap:2px}.auto-publish-switch-copy strong,.auto-publish-switch-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-publish-switch-copy small{color:var(--muted);font-size:12px}.auto-publish-run-panel{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:14px;align-items:center;margin-bottom:12px;padding:12px;border:1px solid rgba(37,99,235,.18);border-radius:var(--radius-md);background:var(--info-soft);color:var(--ink)}.auto-publish-run-panel strong,.auto-publish-run-panel small{display:block}.auto-publish-run-panel small{color:var(--muted-strong);font-size:12px;font-weight:700}.auto-publish-list,.draft-list,.listing-style-grid{display:grid;gap:9px}.draft-source-card{min-width:0;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.draft-source-card:hover{border-color:#0f8b8d57;box-shadow:var(--shadow-md);transform:translateY(-1px)}.draft-source-card .product-thumb{width:54px;height:54px}.draft-source-main{min-width:0;display:grid;gap:6px}.draft-generation-error{min-width:0;display:inline-flex;align-items:flex-start;gap:6px;padding:7px 9px;border:1px solid rgba(197,89,33,.22);border-radius:var(--radius-sm);background:#fff7ed;color:#9a3412;font-size:12px;font-weight:700;line-height:1.35}.draft-generation-error svg{flex:0 0 auto;margin-top:1px}.draft-generation-error span{min-width:0;overflow-wrap:anywhere}.auto-publish-draft-layout{--draft-preview-width: 520px;display:grid;grid-template-columns:minmax(320px,1fr) 12px minmax(380px,var(--draft-preview-width));gap:10px;align-items:start}.draft-preview-resizer{position:sticky;top:14px;width:12px;min-height:220px;align-self:stretch;border:0;border-radius:var(--radius-pill);background:transparent;cursor:col-resize}.draft-preview-resizer:before{content:"";display:block;width:3px;height:100%;min-height:220px;margin:0 auto;border-radius:var(--radius-pill);background:var(--line-strong);transition:background var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.draft-preview-resizer:hover:before,.draft-preview-resizer:focus-visible:before{background:var(--accent);transform:scaleX(1.5)}.is-resizing-draft-preview{cursor:col-resize;-webkit-user-select:none;user-select:none}.draft-list-item{width:100%;min-width:0;display:grid;grid-template-columns:56px minmax(0,1fr) minmax(170px,.36fr) minmax(260px,auto);align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.draft-list-item:hover,.draft-list-item.active{border-color:#0f8b8d57;background:var(--accent-soft);box-shadow:var(--shadow-md);transform:translateY(-1px)}.draft-list-item.is-generating{align-items:start;border-color:#0f8b8d47;background:linear-gradient(180deg,#fff,#f5fbfb)}.draft-list-item .product-thumb{width:56px;height:56px}.draft-list-main{min-width:0;display:grid;gap:4px}.draft-list-item strong,.draft-list-item small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-list-item small{color:var(--muted);font-size:12px}.draft-list-status{min-height:34px;display:grid;place-items:center;padding:0 8px;border-radius:var(--radius-sm);background:#fff;color:var(--accent-strong);font-size:13px;text-align:center;white-space:nowrap}.draft-list-actions{min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.draft-generation-progress{min-width:0;display:grid;gap:6px}.draft-list-progress{max-width:520px;margin-top:2px}.draft-generation-progress-meta{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px;font-weight:800}.draft-generation-progress-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-generation-progress-meta strong{color:var(--accent-strong);font-size:12px}.draft-generation-progress-bar{position:relative;height:7px;overflow:hidden;border-radius:var(--radius-pill);background:#0f8b8d1f}.draft-generation-progress-fill{position:absolute;inset:0 auto 0 0;min-width:7px;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#14b8a6);transition:width var(--motion-base) var(--ease-out)}.draft-generation-progress small{min-width:0;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-list-media-action,.draft-list-package-action,.draft-list-delete-action,.draft-list-publish-action,.draft-list-push-action,.draft-list-push-publish-action{min-width:88px;white-space:nowrap}.draft-list-package-action{min-width:112px}.draft-list-delete-action{min-width:82px}.draft-list-publish-action{min-width:86px}.draft-list-push-action{min-width:104px}.draft-list-push-publish-action{min-width:128px}.draft-pushed-note{color:var(--ok)!important;font-weight:800}.draft-failed-note{color:var(--danger)!important;font-weight:800}.publish-records{margin-top:0}.publish-record-list,.template-list{display:grid;gap:10px}.publish-record-row{display:grid;grid-template-columns:minmax(136px,.55fr) minmax(260px,1.25fr) 94px minmax(180px,.8fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);box-shadow:var(--shadow-sm)}.publish-record-row strong,.publish-record-row small,.publish-record-row span{display:block;min-width:0}.publish-record-row small,.publish-error-summary{color:var(--muted);font-size:12px}.publish-record-type,.publish-record-product,.publish-record-meta,.publish-record-result{min-width:0}.publish-record-product strong,.publish-record-product small,.publish-record-result span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.publish-error-summary{margin-top:4px;color:var(--danger)}.publish-modal-panel{width:min(820px,calc(100vw - 32px))}.publish-modal-body{display:grid;gap:14px}.eligible-shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.eligible-shop-card,.template-row{display:grid;gap:4px;width:100%;min-height:86px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);color:var(--ink);text-align:left;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.eligible-shop-card:hover,.template-row:hover,.eligible-shop-card.active,.template-row.active{border-color:var(--accent);box-shadow:0 0 0 3px #0f8b8d1a}.eligible-shop-card.disabled{background:var(--panel-soft)}.eligible-shop-card strong,.template-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eligible-shop-card span,.eligible-shop-card small,.eligible-shop-card em,.template-row span,.template-row small{color:var(--muted);font-size:12px;font-style:normal}.eligible-shop-card em{color:var(--warn)}.publish-choice-row,.two-column-form{display:grid;grid-template-columns:repeat(2,minmax(120px,auto)) minmax(160px,1fr);gap:10px;align-items:end}.publish-json-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:10px}.publish-json-field textarea{min-height:112px;resize:vertical;font-family:Cascadia Mono,Consolas,monospace;font-size:12px;line-height:1.45}.publish-field-stack{display:grid;gap:12px}.publish-attribute-list{display:grid;gap:8px}.publish-attribute-row{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(180px,1fr);gap:10px;align-items:center}.publish-attribute-row span{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.publish-attribute-row input{width:100%;min-height:38px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);padding:0 10px;outline:0}.publish-attribute-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0f8b8d1f}.publish-package-grid{display:grid;grid-template-columns:repeat(5,minmax(92px,1fr));gap:10px}.publish-preview-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px}.publish-preview-item{display:grid;gap:3px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.publish-preview-item.wide{grid-column:span 2}.publish-preview-item span{color:var(--muted);font-size:11px;font-weight:800}.publish-preview-item strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.publish-modal-actions{margin:0 -2px -2px;padding:14px 18px 16px;border-top:1px solid var(--line);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.publish-template-panel{display:grid;gap:14px}.publish-template-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(360px,1fr);gap:14px;align-items:start}.template-row-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.template-row-top em{padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:11px;font-style:normal;font-weight:850}.listing-rule-card b{color:var(--accent-strong);font-size:12px;font-weight:850}.listing-rule-shop-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:2px 0 12px}.listing-rule-shop-strip>div{display:grid;gap:3px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.listing-rule-shop-strip span,.listing-rule-section .panel-heading p{color:var(--muted);font-size:12px;font-weight:700}.listing-rule-shop-strip strong{min-width:0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.listing-rule-section{display:grid;gap:10px;padding:12px;margin-bottom:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.attribute-editor-list{display:grid;gap:8px}.published-products-panel{position:relative;display:grid;gap:14px}.published-command-bar{grid-template-columns:minmax(0,1fr) minmax(520px,.95fr)}.published-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.published-filter-panel{padding:12px}.published-filters{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(130px,.55fr) minmax(260px,1fr) auto;gap:10px;align-items:end}.published-status-tabs{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.segmented-chip{min-width:0;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--muted-strong);font:inherit;font-size:13px;font-weight:850;line-height:1;cursor:pointer;box-shadow:none;transition:background var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.segmented-chip:hover{border-color:#0f8b8d3d;background:var(--panel-soft);color:var(--ink)}.segmented-chip:focus-visible{outline:2px solid rgba(15,139,141,.28);outline-offset:2px}.segmented-chip.active{border-color:#0f8b8d52;background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px #0f8b8d14}.published-status-tabs .segmented-chip{min-height:38px}.published-status-tabs .segmented-chip span{min-width:22px;min-height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:#0f172a12;color:inherit;font-weight:850;font-size:12px}.published-status-tabs .segmented-chip.active span{background:#0f8b8d24}.published-keyword-field{min-width:0;margin-bottom:0}.published-filter-actions{display:flex;gap:8px;justify-content:flex-end;padding-bottom:1px}.published-list-panel{display:grid;gap:12px}.published-list-toolbar{align-items:start;gap:12px}.published-list-toolbar .published-status-tabs{margin-left:auto}.published-product-list{display:grid;gap:8px}.published-product-row{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(170px,.42fr) minmax(260px,auto);gap:12px;align-items:center;min-width:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.published-product-row:hover{border-color:#0f8b8d47;box-shadow:var(--shadow-soft);transform:translateY(-1px)}.published-product-thumb{width:56px;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft);color:var(--muted);overflow:hidden}.published-product-thumb img{width:100%;height:100%;object-fit:cover}.published-product-main,.published-product-stats{min-width:0;display:grid;gap:4px}.published-product-title-line{min-width:0;display:flex;align-items:center;gap:8px}.published-product-title-line h3{min-width:0;margin:0;overflow:hidden;color:var(--ink);font-size:14px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.published-product-main p,.published-product-meta span,.published-product-stats span{min-width:0;margin:0;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.published-product-meta{display:flex;flex-wrap:wrap;gap:5px 10px;min-width:0}.published-product-stats strong{color:var(--ink);font-size:13px}.published-product-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.published-preview-backdrop{position:fixed;right:0;bottom:0;left:0;top:0;z-index:var(--z-modal-backdrop);display:flex;justify-content:flex-end;background:#0f172a7a;overflow:hidden;overscroll-behavior:contain}.published-product-drawer{position:relative;z-index:var(--z-modal);width:min(530px,100vw);height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);border-left:1px solid var(--line);background:#fff;box-shadow:var(--shadow-strong);overflow:hidden}.published-preview-head{display:flex;align-items:center;justify-content:space-between;min-height:74px;padding:18px 28px 10px}.published-preview-head h2{margin:0;color:var(--ink);font-size:17px}.published-product-drawer .drawer-body{min-height:0;overflow-y:auto;padding:0 28px 36px;background:#f5f6f8;overscroll-behavior:contain}.published-preview-shell{position:relative;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;box-shadow:var(--shadow-soft)}.published-product-preview{position:relative;overflow:hidden;background:#f3f4f6}.published-preview-slider{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-y}.published-preview-slider.dragging{cursor:grabbing;scroll-snap-type:none}.published-preview-slider::-webkit-scrollbar{display:none}.published-preview-slide{flex:0 0 100%;aspect-ratio:1 / 1;display:grid;place-items:center;scroll-snap-align:center;background:#f3f4f6;color:var(--muted)}.published-preview-slide img,.published-sku-sheet-image img,.published-sku-grid img{width:100%;height:100%;object-fit:cover}.published-preview-slide.empty{color:var(--muted)}.published-preview-counter{position:absolute;right:16px;bottom:14px;padding:2px 7px;border-radius:999px;background:#11182761;color:#fff;font-size:12px;font-weight:850}.published-preview-dots{position:absolute;left:0;right:0;bottom:16px;display:flex;justify-content:center;gap:6px;pointer-events:none}.published-preview-dots button{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#ffffff9e;pointer-events:auto}.published-preview-dots button.active{width:18px;background:#fff}.published-preview-info,.published-preview-description,.published-source-mini{padding:14px 20px;border-bottom:1px solid #eceef2;background:#fff}.published-preview-info strong{display:block;color:#111827;font-size:22px;font-weight:950}.published-preview-info h3{margin:5px 0 8px;color:var(--ink);font-size:16px;line-height:1.42}.published-preview-info div{display:flex;flex-wrap:wrap;gap:6px 12px}.published-preview-info span,.published-preview-description p,.published-source-mini span{margin:0;color:var(--muted);font-size:13px}.published-preview-option{width:100%;min-height:56px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:0 20px;border:0;border-bottom:1px solid #eceef2;background:#fff;color:var(--ink);text-align:left}.published-preview-option span{font-size:16px;font-weight:900}.published-preview-option strong{min-width:0;overflow:hidden;color:var(--muted);font-size:13px;text-align:right;text-overflow:ellipsis;white-space:nowrap}.published-preview-description h3{margin:0 0 16px;font-size:16px}.published-preview-description p{white-space:pre-line}.published-preview-description .empty-description{min-height:1px}.published-description-images{display:grid;gap:10px;margin-top:14px}.published-description-images img{width:100%;display:block;border:1px solid #eceef2;border-radius:var(--radius-sm);background:var(--panel-soft)}.published-detail-loading{display:grid;gap:10px;padding:14px 20px;border-bottom:1px solid #eceef2;background:#fff}.published-detail-loading .skeleton{width:100%;max-width:none}.published-detail-loading .skeleton.short{width:42%}.published-source-mini{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px 10px;font-size:12px}.published-source-mini strong{min-width:0;overflow:hidden;color:var(--ink);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.published-sku-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;align-items:flex-end;background:#0f172a33}.published-sku-sheet{position:relative;width:100%;max-height:min(72dvh,680px);display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;padding:24px;border:1px solid var(--line);border-radius:14px 14px 0 0;background:#fff;box-shadow:0 -12px 32px #0f172a29;overflow:hidden}.published-sku-sheet-head{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:14px;align-items:start}.published-sku-sheet-image{width:92px;aspect-ratio:1;overflow:hidden;border-radius:var(--radius-sm);background:var(--panel-soft)}.published-sku-sheet-head strong{display:block;margin-top:2px;color:#111827;font-size:19px;font-weight:950}.published-sku-sheet-head p,.published-sku-choice-label span{min-width:0;margin:8px 0 0;overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.published-sku-choice-label{display:flex;gap:10px}.published-sku-grid{min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;overflow-y:auto;padding-right:2px}.published-sku-grid button{min-width:0;display:grid;gap:5px;padding:6px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--muted);text-align:left;cursor:pointer}.published-sku-grid button.active{border-style:solid;border-color:#111827;color:var(--ink)}.published-sku-grid button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.published-sku-grid img{aspect-ratio:1;border-radius:5px;background:var(--panel-soft)}.published-sku-grid small{min-width:0;overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.published-preview-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:2px}.compact-field{min-width:140px;margin-bottom:0}.draft-preview{position:sticky;top:14px;display:grid;gap:13px;max-height:calc(100vh - 108px);overflow-y:auto}.draft-preview.empty{align-content:center;min-height:260px}.draft-preview-generation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-md);background:var(--accent-soft)}.draft-text-skeleton{display:grid;gap:8px}.draft-text-skeleton span,.draft-chip-skeleton span,.media-slot-skeleton .draft-media-placeholder,.media-slot-skeleton .media-slot-meta strong,.media-slot-skeleton .media-slot-meta small{position:relative;overflow:hidden;color:transparent;background:linear-gradient(90deg,#e6ebf0b3,#f6f8faf2,#e6ebf0b3);background-size:220% 100%;animation:skeleton-sweep 1.15s var(--ease-out) infinite}.draft-text-skeleton span{height:12px;border-radius:var(--radius-pill)}.draft-text-skeleton span:nth-child(1){width:96%}.draft-text-skeleton span:nth-child(2){width:82%}.draft-text-skeleton span:nth-child(3){width:68%}.draft-description{margin:0;color:var(--ink-soft);white-space:pre-wrap}.draft-chip-list{display:flex;flex-wrap:wrap;gap:6px}.draft-chip-list span{min-height:24px;display:inline-flex;align-items:center;max-width:100%;padding:0 8px;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-chip-list.warning span{background:var(--warn-soft);color:var(--warn)}.candidate-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.candidate-section-title h3{margin:0}.draft-generated-media{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.media-slot-group{display:grid;gap:8px}.media-slot-group+.media-slot-group{margin-top:12px}.media-slot-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.media-slot-group-head strong{color:var(--ink);font-size:13px}.media-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))}.media-slot-card{min-width:0;display:grid;gap:7px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:inherit;text-decoration:none;transition:border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.media-slot-card:hover{border-color:#0f8b8d52;box-shadow:var(--shadow-soft);transform:translateY(-1px)}.media-slot-card.empty:hover{box-shadow:none;transform:none}.media-slot-card.success{border-color:#16794a38}.media-slot-card.danger{border-color:#b4231847;background:var(--danger-soft)}.media-slot-card.realtime{border-color:#0f8b8d3d;background:var(--accent-soft)}.media-slot-thumb{min-width:0;aspect-ratio:1}.draft-generated-image,.draft-media-placeholder{min-width:0;aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft);overflow:hidden}.draft-generated-image img{width:100%;height:100%;object-fit:cover;opacity:0;transition:transform var(--motion-fast) var(--ease-out)}.draft-generated-image.is-loaded img{opacity:1}.draft-generated-image:hover img{transform:scale(1.035)}.draft-generated-image.is-loading:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#e6ebf0b3,#f6f8faf2,#e6ebf0b3);background-size:220% 100%;animation:skeleton-sweep 1.15s var(--ease-out) infinite}.draft-generated-image{position:relative}.media-image-loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;color:var(--muted);font-size:12px}.media-image-loader.error{background:var(--danger-soft);color:var(--danger);font-weight:700}.draft-media-placeholder{gap:6px;color:var(--muted);font-size:12px}.media-slot-meta{min-width:0;display:grid;gap:2px}.media-slot-meta strong,.media-slot-meta small{min-width:0;overflow:hidden;text-overflow:ellipsis}.media-slot-meta strong{color:var(--ink);font-size:12px;white-space:nowrap}.media-slot-meta small{display:-webkit-box;min-height:30px;color:var(--muted);font-size:11px;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical}.draft-media-status{display:flex;align-items:center;gap:8px;min-width:0;color:var(--muted)}.draft-media-status small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draft-key-value{display:grid;gap:6px}.draft-key-value-row{min-width:0;display:grid;grid-template-columns:120px minmax(0,1fr);gap:9px;align-items:start;padding:8px 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.draft-key-value-row span,.draft-key-value-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.draft-key-value-row span{color:var(--muted);font-size:12px}.draft-key-value-row strong{color:var(--ink);font-size:12px;font-weight:750;white-space:pre-wrap}.draft-json-block{max-height:220px;overflow:auto;margin:0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#0f1720;color:#e7eef7;font-size:12px;line-height:1.45;white-space:pre-wrap}.listing-style-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.style-search-field{margin-bottom:10px}.listing-style-card{min-width:0;display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.listing-style-card:hover,.listing-style-card.active{border-color:#0f8b8d57;box-shadow:var(--shadow-md);transform:translateY(-1px)}.listing-style-card>button{min-width:0;display:grid;gap:7px;border:0;background:transparent;color:var(--ink);text-align:left}.listing-style-card strong,.listing-style-card small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.listing-style-card small{color:var(--muted);font-size:12px}.listing-style-card .row-actions{gap:6px}.listing-style-card .row-actions>button{flex:1 1 auto}.listing-style-editor{position:sticky;top:14px;max-height:calc(100vh - 108px);overflow-y:auto}.listing-style-form{display:grid;gap:8px}.token-choice-field{display:grid;gap:8px;padding:0;margin:0;border:0}.token-choice-field legend{padding:0;color:var(--muted);font-size:12px;font-weight:800}.token-choice-grid{display:flex;flex-wrap:wrap;gap:7px}.token-choice-button{min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text);font-weight:800;cursor:pointer;transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.token-choice-button:hover:not(:disabled){border-color:#0f8b8d73;background:#0f8b8d12}.token-choice-button:focus-visible{outline:3px solid rgba(15,139,141,.2);outline-offset:2px}.token-choice-button.active{border-color:#0f8b8d8c;background:var(--accent-soft);color:var(--accent);box-shadow:0 8px 20px #0f8b8d1a}.token-choice-button:disabled{cursor:not-allowed;opacity:.62}.media-style-box{display:grid;gap:8px;padding:10px;border:1px solid rgba(15,139,141,.18);border-radius:var(--radius-md);background:var(--accent-soft)}.media-style-box .form-field{margin-bottom:0}.scoring-strategy{display:grid;gap:14px}.scoring-command-bar{background:linear-gradient(180deg,#fff,#fbfcfd)}.scoring-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:14px;align-items:start}.filter-template-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.filter-template-card{display:grid;gap:12px;padding:13px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-xs);transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.filter-template-card:hover,.filter-template-card.active{transform:translateY(-1px);border-color:#0f8b8d57;box-shadow:var(--shadow-sm)}.filter-template-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.filter-template-card-head div{min-width:0;display:grid;gap:3px}.filter-template-card-head strong,.filter-template-card-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-template-card-head strong{color:var(--ink);font-size:14px}.filter-template-card-head span{color:var(--muted);font-size:12px;font-weight:650}.filter-template-card-head em,.filter-summary-hero em{flex:0 0 auto;min-height:24px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;font-style:normal;font-weight:850}.filter-template-card.balanced .filter-template-card-head em,.filter-summary-hero.balanced em{background:var(--accent-soft);color:var(--accent-strong)}.filter-template-card.strict .filter-template-card-head em,.filter-summary-hero.strict em{background:var(--warning-soft);color:var(--warning)}.filter-template-card.loose .filter-template-card-head em,.filter-summary-hero.loose em{background:var(--info-soft);color:var(--info)}.filter-template-rules{display:flex;flex-wrap:wrap;gap:6px;min-height:54px}.filter-template-rules span,.filter-rule-preview-item span{min-height:24px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:var(--panel-soft);color:var(--muted-strong);font-size:12px;font-weight:800}.filter-template-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.filter-workbench{grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr)}.filter-profile-groups{display:grid;gap:14px}.filter-profile-group{display:grid;gap:8px}.filter-profile-group>span{color:var(--muted);font-size:12px;font-weight:850}.filter-summary-panel{display:grid;gap:14px}.filter-summary-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(180deg,#fff,var(--panel-soft))}.filter-summary-hero div{min-width:0;display:grid;gap:4px}.filter-summary-hero span{color:var(--muted);font-size:12px;font-weight:850}.filter-summary-hero strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:18px}.filter-summary-hero p{margin:0;color:var(--muted-strong);font-size:13px;font-weight:650}.filter-summary-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.filter-summary-metrics div{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.filter-summary-metrics span{color:var(--muted);font-size:12px;font-weight:800}.filter-summary-metrics strong{color:var(--ink);font-size:17px}.filter-rule-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filter-rule-preview-grid>div{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.filter-rule-preview-list{display:grid;gap:7px}.filter-rule-preview-item{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:8px}.filter-rule-preview-item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:13px}.dimension-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}.dimension-chip{min-height:68px;display:grid;align-content:center;gap:4px;padding:10px 11px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--ink);text-align:left;transition:transform var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out),background var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.dimension-chip:hover,.dimension-chip.active{border-color:#0f8b8d57;background:var(--accent-soft);color:var(--accent-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.dimension-chip span,.dimension-chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dimension-chip strong{color:var(--muted);font-size:12px}.dimension-chip.active strong{color:var(--accent-strong)}.filter-editor-form{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(240px,1.35fr);gap:12px;margin-bottom:12px}.filter-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.filter-editor-actions div{display:grid;gap:4px;min-width:0}.filter-editor-actions strong{color:var(--text);font-size:14px}.filter-editor-actions span{color:var(--muted);font-size:12px;line-height:1.5}.filter-rule-section{display:grid;gap:10px}.filter-rule-list{display:grid;gap:8px}.filter-rule-row{display:grid;grid-template-columns:minmax(124px,.9fr) minmax(124px,.9fr) minmax(180px,1.2fr) 34px;align-items:end;gap:9px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.filter-rule-row .form-field{margin-bottom:0}.filter-range-fields{display:grid;grid-template-columns:repeat(2,minmax(82px,1fr));gap:8px}.knowledge-rule-section{display:grid;gap:10px}.knowledge-rule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.knowledge-rule-card{min-width:0;display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.knowledge-rule-card span{color:var(--ink);font-size:13px;font-weight:850}.knowledge-rule-card small{min-height:32px;color:var(--muted);font-size:12px;line-height:1.35}.switch-control{min-height:32px;display:inline-flex;align-items:center;gap:7px;color:var(--muted-strong);font-size:12px;font-weight:850}.score-threshold-control{max-width:180px}.weight-list{display:grid;gap:8px}.weight-row{min-height:42px;display:grid;grid-template-columns:34px minmax(0,1fr) 54px;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.weight-row span,.weight-row em{min-height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-style:normal;font-weight:850}.weight-row span{background:#fff;color:var(--muted-strong)}.weight-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weight-row em{background:var(--accent-soft);color:var(--accent-strong)}.scoring-empty{min-height:120px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--panel-soft)}.collector-setup-panel{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,420px) auto;align-items:center;gap:12px}.collector-setup-copy h2,.collector-setup-copy p{margin-bottom:0}.collector-token-box{min-width:0;display:grid;gap:5px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.collector-token-box span{color:var(--muted);font-size:12px;font-weight:800}.collector-token-box code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.collector-actions{justify-content:flex-end}.collection-task-form,.collection-filters,.user-form,.shop-form{display:grid;gap:10px}.collection-task-form{grid-template-columns:minmax(150px,1.2fr) minmax(150px,1fr) minmax(132px,.8fr) minmax(150px,1fr) 92px 92px auto;align-items:end;margin-bottom:13px}.collection-task-form .form-field,.collection-filters .form-field,.user-form .form-field{margin-bottom:0}.collection-filters{grid-template-columns:170px minmax(180px,1fr) auto;align-items:end;margin-bottom:12px}.table-scroll{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.task-table,.collection-task-table,.pending-detail-table,.source-product-table,.user-table,.shop-management-table{width:100%;min-width:920px;border-collapse:collapse;background:#fff}.source-product-table{min-width:1180px}.shop-management-table{min-width:960px}.task-table th,.task-table td,.collection-task-table th,.collection-task-table td,.pending-detail-table th,.pending-detail-table td,.source-product-table th,.source-product-table td,.user-table th,.user-table td,.shop-management-table th,.shop-management-table td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:13px}.task-table th,.collection-task-table th,.pending-detail-table th,.source-product-table th,.user-table th,.shop-management-table th{position:sticky;top:0;z-index:1;background:#f8fafc;color:var(--muted-strong);font-size:12px;font-weight:850}.task-table tr:last-child td,.collection-task-table tr:last-child td,.pending-detail-table tr:last-child td,.source-product-table tr:last-child td,.user-table tr:last-child td,.shop-management-table tr:last-child td{border-bottom:0}.task-table tbody tr,.collection-task-table tbody tr,.pending-detail-table tbody tr,.source-product-table tbody tr,.user-table tbody tr,.shop-management-table tbody tr{transition:background var(--motion-fast) var(--ease-out)}.task-table tbody tr:hover,.collection-task-table tbody tr:hover,.pending-detail-table tbody tr:hover,.source-product-table tbody tr:hover,.user-table tbody tr:hover,.shop-management-table tbody tr:hover{background:#fbfcfd}.selection-cell{width:42px}input[type=checkbox]{accent-color:var(--accent)}.table-subline{display:block;max-width:340px;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-actions{justify-content:flex-start;flex-wrap:wrap}.source-product-cell{min-width:280px;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px}.source-product-cell.compact{min-width:320px}.source-product-cell strong{display:-webkit-box;max-width:520px;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35}.product-thumb{width:44px;height:44px;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--panel-soft)}.product-thumb.placeholder{display:grid;place-items:center;color:var(--muted);font-size:12px}.empty-state.in-table{min-height:88px;display:grid;place-items:center;gap:4px;text-align:center}.empty-state span{color:var(--ink);font-weight:850}.empty-state small{color:var(--muted)}.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;color:var(--muted);font-size:13px}.pagination-actions{display:flex;align-items:center;gap:8px}.admin-grid,.shop-admin-grid{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.5fr);gap:14px;align-items:start}.shop-admin-grid{grid-template-columns:320px minmax(0,1fr)}.shop-auth-panel{display:grid;gap:12px}.shop-auth-panel p,.shop-auth-note{margin-bottom:0}.shop-form.simple{display:block}.split-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.switch-row,.mini-toggle,.order-head,.order-meta,.order-source{display:flex;align-items:center}.switch-row,.mini-toggle{gap:7px;color:var(--ink);font-size:13px}.setting-switch{margin-bottom:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal-backdrop);display:grid;place-items:center;padding:clamp(12px,3vh,22px);background:#1018206b}.settings-modal{z-index:var(--z-modal);width:min(920px,100%);max-height:min(760px,calc(100vh - 44px));overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-lg)}.settings-modal-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 16px;border-bottom:1px solid var(--line)}.settings-modal-head h2,.settings-modal-head p{margin-bottom:0}.settings-modal-form{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}.settings-modal-body{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:14px;padding:16px}.settings-section{padding:13px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel-soft)}.shop-info-grid{display:grid;grid-template-columns:minmax(140px,.35fr) minmax(0,1fr);gap:8px 12px;align-items:start}.shop-info-grid span{color:var(--muted);font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.shop-info-grid strong{min-width:0;overflow-wrap:anywhere}.settings-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line);background:var(--panel)}.score-badge{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:24px;border-radius:999px;font-size:12px;font-weight:800}.score-badge.success{background:var(--ok-soft);color:var(--ok)}.score-badge.warning{background:var(--warn-soft);color:var(--warn)}.score-badge.danger{background:var(--danger-soft);color:var(--danger)}.ok-text{color:var(--ok);font-weight:750}.muted-text{color:var(--muted)}.danger-text{color:var(--danger)}.skeleton{display:block;width:72px;height:12px;border-radius:999px;background:linear-gradient(90deg,#eef2f7,#f7f9fc 42%,#eef2f7 82%);background-size:220% 100%;animation:skeleton-pulse 1.25s var(--ease-out) infinite}.skeleton.short{width:28px}.skeleton.wide{width:150px}@keyframes skeleton-pulse{0%{background-position:120% 0}to{background-position:-120% 0}}@media(max-width:1180px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.factory-minimal-header{grid-template-columns:minmax(190px,auto) minmax(320px,1fr) auto auto auto}.factory-progress-main{grid-template-columns:auto minmax(110px,.8fr) minmax(150px,1.2fr)}.factory-progress-kpis span{padding-inline:5px}.brand-block{justify-content:center;padding-inline:10px}.brand-block div,.nav-item span:not(.nav-active-indicator):not(.nav-dot),.nav-utility span{display:none}.nav-item,.nav-utility{justify-content:center}.nav-dot{position:absolute;right:10px;top:10px;margin-left:0}.dashboard-grid,.candidate-layout,.auto-publish-draft-layout,.scoring-layout,.filter-workbench,.shop-admin-grid,.admin-grid,.filter-rule-preview-grid,.factory-control-strip{grid-template-columns:1fr}.factory-run-stats,.factory-toolbar,.factory-batch-controls{justify-content:flex-start}.factory-map-stage{min-height:0;height:100%}.factory-event-stream{overflow-x:auto;grid-template-columns:repeat(5,minmax(220px,1fr))}.candidate-drawer,.draft-preview,.listing-style-editor{position:static;max-height:none}.draft-preview-resizer{display:none}.style-manager-layout{grid-template-columns:1fr}.style-manager-layout .listing-style-editor{position:static;max-height:none}.selected-style-summary{grid-template-columns:1fr}.selected-style-summary .inline-actions{justify-content:flex-start}.collector-setup-panel{grid-template-columns:1fr}.collector-actions{justify-content:flex-start}.collection-task-form{grid-template-columns:repeat(3,minmax(150px,1fr))}.published-command-bar,.published-filters{grid-template-columns:1fr}.published-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.published-filter-actions{justify-content:flex-start}.published-product-row{grid-template-columns:56px minmax(0,1fr)}.published-product-stats,.published-product-actions{grid-column:2;justify-content:flex-start}.published-list-toolbar .published-status-tabs{justify-content:flex-start}.ai-settings-channel-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media(max-width:840px){.app-shell{display:block}.factory-minimal-header{grid-template-columns:1fr auto auto}.factory-task-overview{grid-column:1 / -1;justify-self:stretch;text-align:left}.factory-progress-main{grid-template-columns:1fr;gap:3px}.factory-progress-main strong{max-width:100%}.factory-progress-kpis{flex-wrap:wrap;overflow:visible}.sidebar{position:sticky;z-index:var(--z-sticky);top:0;height:auto;min-height:0;border-bottom:1px solid rgba(255,255,255,.1)}.brand-block{justify-content:flex-start}.brand-block div{display:block}.side-nav{display:flex;gap:6px;overflow-x:auto;padding:8px}.ai-settings-channel-grid{grid-template-columns:1fr}.nav-item{width:auto;min-width:42px}.sidebar-footer{display:none}.workspace{padding:14px 12px 22px}.topbar{position:static;margin:0 0 14px;padding:0;border-bottom:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;flex-direction:column}.topbar-actions{width:100%;justify-content:flex-start}.auto-factory-page{min-height:100vh;overflow:auto;padding:10px}.factory-control-strip{position:relative}.factory-title-group{align-items:flex-start;flex-wrap:wrap}.factory-toolbar>button{flex:1 1 140px}.factory-map-stage{min-height:auto;padding:14px;overflow:visible}.factory-conveyor,.factory-floor-grid,.factory-defense-route,.factory-conveyor-layer,.factory-parcel-layer,.factory-lane-label,.factory-route-node,.factory-warehouse,.factory-fault-node{display:none}.factory-scene-plane{position:relative;left:auto;top:auto;width:auto;height:auto;transform:none}.factory-station-grid{position:relative;inset:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;z-index:1}.factory-station{position:relative;left:auto!important;right:auto!important;top:auto!important;width:auto;min-height:104px}.factory-feed-bin{position:relative;left:auto;top:auto;width:auto;height:auto;margin-bottom:10px;padding:12px}.factory-event-stream{display:flex;overflow-x:auto}.factory-event{flex:0 0 230px}.factory-roulette-layout{grid-template-columns:1fr;justify-items:stretch}.factory-mega-roulette-panel{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.factory-mega-roulette-layout{min-height:auto}.factory-mega-wheel-stage{grid-template-rows:minmax(320px,auto)}.factory-mega-wheel-host{width:min(520px,78vw)}.factory-mega-wheel-pointer{right:calc(50% - min(260px,39vw) - 3px)}.factory-tool-stack,.factory-selection-list,.factory-repair-list,.factory-detail-queue-grid,.factory-workflow-list,.factory-report-grid{width:100%}.workflow-board,.summary-grid,.collection-kpi-grid,.filter-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-console-grid{grid-template-columns:1fr}.factory-real-data-grid,.factory-feed-detail-toolbar,.factory-feed-queue-card,.factory-detail-queue-grid,.factory-task-live-list article,.factory-workflow-row{grid-template-columns:1fr}.collection-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-hero,.collection-command-bar{align-items:flex-start;flex-direction:column}.collection-hero-actions{justify-content:flex-start}.collection-task-form,.collection-filters,.candidate-filters,.filter-editor-form,.filter-rule-row,.split-fields{grid-template-columns:1fr}.filter-template-actions{justify-content:flex-start}.filter-editor-actions{align-items:stretch;flex-direction:column}.filter-editor-actions .primary-action{width:100%}.filter-rule-row{align-items:stretch}.candidate-card{grid-template-columns:24px 54px minmax(0,1fr);align-items:start}.draft-source-card{grid-template-columns:54px minmax(0,1fr);align-items:start}.draft-source-card .row-actions{grid-column:2;justify-content:flex-start}.candidate-score,.candidate-actions{grid-column:3}.candidate-actions{justify-content:flex-start}.table-pagination{align-items:flex-start;flex-direction:column}.style-picker-panel{max-height:calc(100vh - 20px)}.style-picker-panel .settings-modal-head,.style-manager-panel .settings-modal-head{align-items:flex-start;flex-direction:column}.style-picker-panel .settings-modal-head .inline-actions{justify-content:flex-start}.style-manager-drawer{padding:0}.style-manager-panel{width:100%}.style-manager-layout{padding:10px}.publish-template-layout,.publish-record-row,.publish-choice-row,.publish-json-grid,.publish-package-grid,.publish-preview-grid,.two-column-form{grid-template-columns:1fr}.publish-attribute-row{grid-template-columns:1fr;gap:5px}.publish-preview-item.wide{grid-column:auto}.publish-modal-actions{padding:12px}.published-product-drawer{width:min(530px,100vw)}.published-preview-head,.published-product-drawer .drawer-body{padding-inline:22px}}@media(max-width:520px){h1{font-size:21px}.topbar-title{gap:9px}.view-icon{width:32px;height:32px}.workflow-board,.summary-grid,.collection-kpi-grid,.published-kpis,.auto-publish-status-metrics,.auto-publish-flow-board,.auto-publish-switch-card,.auto-publish-run-panel,.factory-station-grid,.factory-station-detail-summary,.factory-station-signal-grid,.factory-real-data-grid,.factory-feed-config-grid,.factory-selection-list,.factory-report-grid{grid-template-columns:1fr}.factory-batch-controls,.factory-feed-detail-toolbar,.factory-station-actions{align-items:stretch;flex-direction:column}.factory-batch-controls>button,.factory-feed-detail-toolbar>button,.factory-station-actions>button{width:100%}.factory-roulette-controls{grid-template-columns:1fr}.factory-tool-panel{max-height:calc(100dvh - 20px);padding:12px}.factory-mega-wheel-stage{padding:10px}.factory-mega-wheel-shell{min-height:300px}.factory-mega-wheel-host{width:min(320px,78vw);border-width:7px}.factory-mega-wheel-pointer{right:calc(50% - min(160px,39vw) - 3px);border-top-width:12px;border-bottom-width:12px;border-right-width:22px}.factory-mega-wheel-hub{width:min(134px,42vw);min-height:104px;padding:12px}.factory-mega-wheel-hub strong{max-width:92px;font-size:15px}.candidate-card{grid-template-columns:24px 1fr}.draft-source-card,.draft-list-item,.published-product-row{grid-template-columns:1fr}.draft-source-card .product-thumb,.draft-list-item .product-thumb,.published-product-thumb{width:100%;height:auto;aspect-ratio:1 / 1;max-height:220px}.published-product-stats,.published-product-actions{grid-column:1}.published-product-actions{width:100%;flex-direction:column}.published-product-actions>button{width:100%}.published-list-toolbar{flex-direction:column}.published-list-toolbar .published-status-tabs,.published-preview-actions>button{width:100%}.published-product-drawer{width:100vw}.published-preview-head,.published-product-drawer .drawer-body{padding-inline:16px}.published-product-drawer .drawer-body{padding-bottom:28px}.published-preview-info,.published-preview-description,.published-preview-option{padding-inline:16px}.published-sku-sheet{padding:20px}.published-sku-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.draft-source-card .row-actions{grid-column:1}.draft-list-actions{width:100%;flex-direction:column}.draft-list-media-action,.draft-list-package-action,.draft-list-delete-action,.draft-list-publish-action,.draft-list-push-action,.draft-list-push-publish-action{width:100%}.draft-key-value-row{grid-template-columns:1fr}.candidate-select{min-height:28px}.candidate-card .product-thumb{grid-column:1 / -1;width:100%;height:auto;aspect-ratio:1 / 1;max-height:220px}.candidate-main,.candidate-score,.candidate-actions{grid-column:1 / -1}.candidate-title-row{align-items:flex-start;flex-direction:column}.candidate-drawer-actions>button{flex:1}.collection-tabs,.collection-status-grid,.collection-create-actions,.split-fields.compact{grid-template-columns:1fr}.collection-tab{width:100%}.panel,.collection-hero{padding:12px}.panel-heading{flex-direction:column;gap:10px}.inline-actions,.row-actions,.pagination-actions{width:100%}.inline-actions>button,.row-actions>button,.pagination-actions>button{flex:1}.market-select,.user-chip{max-width:100%}.modal-backdrop{padding:10px}.style-picker-body{padding:12px}.style-picker-footer{bottom:-12px;margin:12px -12px -12px;padding:10px 12px;flex-direction:column}.style-selector-grid,.listing-style-grid{grid-template-columns:1fr}.style-manager-library,.style-manager-layout .listing-style-editor{padding:12px}.settings-modal{max-height:calc(100vh - 20px)}.shop-info-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
