.ecomc{--bg:#f0eae0;--surface:#fbf8f1eb;--surface2:#f4eee2;--bd:#e2d7c2;--bd-strong:#cdbe9f;--tx:#29251e;--tx2:#7c7261;--tx3:#a79d8a;--accent:#a9823f;--accent-dim:#a9823f73;--focus-ring:#a9823f24;--input-bg:#fff;--dz-bg:#a9823f0f;--badge-bg:linear-gradient(135deg, #c9a86b, #8a6f3f);--badge-tx:#fffdf7;--badge-glow:0 6px 14px #a9823f4d;--primary-bg:linear-gradient(135deg, #2e2a22, #1d1a14);--primary-tx:#e8c98c;--glow:0 12px 26px #29251e47;--glow-strong:#29251e66;--tag-bg:#29251ead;--tag-tx:#f6f1e6;--shadow:0 16px 36px #50422824;--title-tx:#3a3123;--spinner-bd:#e8c98c59;--spinner-tx:#e8c98c;background:var(--bg);color:var(--tx);border-radius:22px;min-height:88vh;padding:20px 22px 22px;font-family:Noto Sans SC,Microsoft YaHei,PingFang SC,system-ui,sans-serif;position:relative;overflow:hidden}.ecomc:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(#78643c0f 1px,#0000 1px);background-size:9px 9px;position:absolute;inset:0}.ecomc *{box-sizing:border-box}.ecomc .serif{font-family:Noto Serif SC,Songti SC,serif}.ecomc .topbar{z-index:1;align-items:center;gap:16px;padding:2px 2px 18px;display:flex;position:relative}.ecomc .back{color:var(--tx2);border:1px solid var(--bd);background:var(--surface);cursor:pointer;border-radius:11px;align-items:center;gap:7px;padding:9px 14px;font-size:13px;text-decoration:none;display:inline-flex}.ecomc .back:hover{color:var(--accent);border-color:var(--accent-dim)}.ecomc .title{letter-spacing:1px;color:var(--title-tx);margin-right:auto;font-family:Noto Serif SC,Songti SC,serif;font-size:20px;font-weight:700}.ecomc .top-actions{gap:10px;display:flex}.ecomc .ghost{color:var(--tx2);border:1px solid var(--bd);background:var(--surface);cursor:pointer;border-radius:11px;align-items:center;gap:7px;padding:9px 15px;font-size:13px;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.ecomc .ghost:hover,.ecomc .ghost.filled{color:var(--accent);border-color:var(--accent-dim)}.ecomc .ghost svg,.ecomc .back svg{width:15px;height:15px}.ecomc .badge-count{background:var(--badge-bg);min-width:18px;height:18px;color:var(--badge-tx);border-radius:999px;place-items:center;padding:0 5px;font-size:11px;font-weight:700;display:grid}.ecomc .toast{z-index:3;border:1px solid var(--bd-strong);background:var(--surface);border-radius:12px;align-items:center;gap:10px;margin-bottom:12px;padding:11px 14px;font-size:13px;display:flex;position:relative}.ecomc .toast.ok{color:#5c7a3e;background:#b4cd8c2e;border-color:#78965066}.ecomc .toast.err{color:#a05a42;background:#c882641f;border-color:#b4633f59}.ecomc .toast button{color:inherit;cursor:pointer;background:0 0;border:none;margin-left:auto;font-size:15px}.ecomc .workspace{z-index:1;grid-template-columns:300px 1fr 344px;align-items:start;gap:16px;display:grid;position:relative}@media (max-width:1180px){.ecomc .workspace{grid-template-columns:1fr 1fr}.ecomc .workspace .panel-right{grid-column:1/-1}}.ecomc .panel{background:var(--surface);border:1px solid var(--bd);border-top:1px solid var(--bd-strong);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:18px;flex-direction:column;gap:14px;padding:18px;display:flex}.ecomc .panel-head{letter-spacing:.2px;align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.ecomc .badge{background:var(--badge-bg);width:26px;height:26px;color:var(--badge-tx);box-shadow:var(--badge-glow);border-radius:50%;place-items:center;font-family:Noto Serif SC,serif;font-size:13px;font-weight:700;display:grid}.ecomc .hint{color:var(--tx3);font-size:12px;line-height:1.7}.ecomc .field label{color:var(--tx2);margin-bottom:7px;font-size:12.5px;display:block}.ecomc input[type=text],.ecomc textarea,.ecomc select{background:var(--input-bg);border:1px solid var(--bd);width:100%;color:var(--tx);border-radius:11px;outline:none;padding:10px 12px;font-family:inherit;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.ecomc textarea{resize:none;line-height:1.65}.ecomc input[type=text]:focus,.ecomc textarea:focus,.ecomc select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.ecomc .dropzone{border:1.5px dashed var(--accent-dim);height:150px;color:var(--tx3);text-align:center;background:var(--dz-bg);cursor:pointer;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:12.5px;display:flex;position:relative;overflow:hidden}.ecomc .dropzone img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ecomc .dropzone .dz-ico{color:var(--accent)}.ecomc .dropzone .dz-ico svg{width:30px;height:30px}.ecomc .dz-tag{z-index:1;background:var(--tag-bg);color:var(--tag-tx);border:1px solid var(--tag-bd);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;align-items:center;gap:6px;padding:7px 13px;font-size:12px;display:inline-flex;position:relative}.ecomc .dz-actions,.ecomc .thumb-pair{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ecomc .thumb-mini{background:var(--input-bg);border:1px solid var(--bd);border-radius:9px;overflow:hidden}.ecomc .thumb-mini img{object-fit:contain;width:100%;height:56px;display:block}.ecomc .thumb-mini .cap{color:var(--tx3);text-align:center;padding:2px 0 4px;font-size:10px}.ecomc .thumb-mini .ph{height:56px;color:var(--tx3);justify-content:center;align-items:center;font-size:10px;display:flex}.ecomc .ai-btn{color:var(--badge-tx);background:var(--badge-bg);cursor:pointer;box-shadow:var(--badge-glow);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px;font-size:13.5px;font-weight:600;transition:transform .15s,box-shadow .15s;display:flex}.ecomc .ai-btn:hover{box-shadow:0 8px 20px #a9823f66}.ecomc .ai-btn:disabled{opacity:.6;cursor:not-allowed}.ecomc .btn{border:1px solid var(--bd);background:var(--surface2);color:var(--tx);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-size:13.5px;font-weight:600;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.ecomc .btn:hover{border-color:var(--accent-dim)}.ecomc .btn svg{width:16px;height:16px}.ecomc .btn.primary{background:var(--primary-bg);color:var(--primary-tx);box-shadow:var(--glow);border:none;padding:14px;font-size:15px}.ecomc .btn.primary:hover{box-shadow:0 12px 30px var(--glow-strong);border-color:#0000}.ecomc .btn.primary:disabled{opacity:.65;cursor:not-allowed}.ecomc .spinner{border:2px solid var(--spinner-bd);border-top-color:var(--spinner-tx);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite ecomc-spin}@keyframes ecomc-spin{to{transform:rotate(360deg)}}.ecomc .param-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.ecomc .param{background:var(--input-bg);border:1px solid var(--bd);border-radius:12px;padding:6px 8px 8px}.ecomc .param .k{color:var(--tx3);padding-left:4px;font-size:11px;display:block}.ecomc .param select{color:var(--accent);font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;width:100%;padding:0 4px;font-size:17px;font-weight:700}.ecomc .toggle-row{color:var(--tx2);flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.ecomc .toggle{background:var(--accent);cursor:pointer;border-radius:999px;flex:none;width:38px;height:22px;position:relative;box-shadow:inset 0 0 0 1px #0000001f}.ecomc .toggle:after{content:"";background:#f6f1e6;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:2px;right:2px;box-shadow:0 1px 3px #0000004d}.ecomc .toggle.off{background:#d8cdb8}.ecomc .toggle.off:after{left:2px;right:auto}.ecomc .link-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:2px;font-family:inherit;font-size:12.5px;display:inline-flex}.ecomc .link-btn:hover{text-decoration:underline}.ecomc .sep{background:var(--bd);width:1px;height:16px}.ecomc .toggle-row{flex-wrap:nowrap}.ecomc .toggle-row .tt{white-space:nowrap}.ecomc .toggle-row .link-btn{white-space:nowrap;flex:none}.ecomc .matrix{border:1px dashed var(--accent-dim);background:var(--dz-bg);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.ecomc .matrix-head{color:var(--tx2);justify-content:space-between;align-items:center;font-size:12.5px;display:flex}.ecomc .matrix-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ecomc .combo{border:1px solid var(--bd);background:var(--input-bg);border-radius:10px;padding:8px 10px}.ecomc .combo .ck{align-items:center;gap:7px;display:flex}.ecomc .combo .ck-dot{border:1.5px solid var(--bd-strong);border-radius:5px;flex:none;place-items:center;width:16px;height:16px;display:grid}.ecomc .combo.checked .ck-dot{border-color:var(--accent);background:var(--badge-bg)}.ecomc .combo .ck-dot svg{width:11px;height:11px;color:var(--badge-tx)}.ecomc .combo .cm{color:var(--tx3);margin-top:5px;font-size:10.5px}.ecomc .taskbar{background:var(--surface);border:1px solid var(--bd);z-index:1;border-radius:14px;align-items:center;gap:14px;margin-top:16px;padding:13px 18px;display:flex;position:relative}.ecomc .taskbar .tl{white-space:nowrap;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.ecomc .taskbar .tmsg{text-align:center;color:var(--tx3);flex:1;font-size:12.5px}.ecomc .task-list{background:var(--surface);border:1px solid var(--bd);z-index:1;border-radius:14px;flex-direction:column;gap:10px;margin-top:10px;padding:12px;display:flex;position:relative}.ecomc .task-row{background:var(--surface2);border:1px solid var(--bd);border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.ecomc .task-row.dim{opacity:.45}.ecomc .task-row .thumb{background:var(--input-bg);border-radius:8px;flex:none;width:92px;height:54px;position:relative;overflow:hidden}.ecomc .task-row .thumb video{object-fit:cover;width:100%;height:100%}.ecomc .task-row .thumb .ph{color:var(--tx3);background:var(--input-bg);place-items:center;font-size:10.5px;display:grid;position:absolute;inset:0}.ecomc .task-row .tinfo{flex:1;min-width:0}.ecomc .task-row .tname{color:var(--tx);font-size:12.5px}.ecomc .task-row .tmeta{color:var(--tx3);flex-wrap:wrap;align-items:center;gap:7px;margin-top:3px;font-size:11px;display:flex}.ecomc .task-row .tprompt{color:var(--tx2);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;overflow:hidden}.ecomc .task-row .terr{color:#a05a42;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.ecomc .tag{white-space:nowrap;border:1px solid var(--bd);color:var(--tx3);border-radius:999px;padding:3px 9px;font-size:10.5px}.ecomc .tag-ok{white-space:nowrap;color:#8a6f3f;background:#a9823f1f;border:1px solid #a9823f59;border-radius:999px;padding:3px 9px;font-size:10.5px}.ecomc .tag-fail{white-space:nowrap;color:#a86a4a;background:#b4633f1a;border:1px solid #b4633f59;border-radius:999px;padding:3px 9px;font-size:10.5px}.ecomc .tag-run{white-space:nowrap;color:#5f7090;background:#788cb41a;border:1px solid #788cb459;border-radius:999px;padding:3px 9px;font-size:10.5px}.ecomc .progress-track{background:#29251e1a;border-radius:999px;flex:none;width:90px;height:6px;overflow:hidden}.ecomc .progress-fill{background:linear-gradient(90deg,#c9a86b,#a9823f);border-radius:999px;height:100%;transition:width .4s}.ecomc .act{color:var(--accent);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-family:inherit;font-size:12px}.ecomc .act.danger{color:#a86a4a}.ecomc audio{width:100%;height:34px;margin-top:8px}.ecomc .topbar,.ecomc .toast,.ecomc .workspace,.ecomc .taskbar,.ecomc .task-list{max-width:1240px;margin-left:auto;margin-right:auto}.ecomc .theme-switch{border:1px solid var(--bd);background:var(--surface);border-radius:999px;align-items:center;gap:4px;padding:3px;display:flex}.ecomc .ts-label{color:var(--tx3);white-space:nowrap;padding:0 4px 0 7px;font-size:11px}.ecomc .ts-btn{color:var(--tx2);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-family:inherit;font-size:12px;transition:color .15s,background .15s,box-shadow .15s;display:inline-flex}.ecomc .ts-btn:hover{color:var(--tx)}.ecomc .ts-btn.on{color:var(--tx);background:var(--surface2);box-shadow:inset 0 0 0 1px var(--accent-dim);font-weight:600}.ecomc .ts-btn .sw{border-radius:50%;width:10px;height:10px;box-shadow:inset 0 0 0 1px #0003}.ecomc .ts-btn .sw-c{background:linear-gradient(135deg,#f6f1e6,#c9a86b)}.ecomc .ts-btn .sw-a{background:linear-gradient(135deg,#0a0d13,#c9a86b)}.ecomc .ts-btn .sw-b{background:linear-gradient(135deg,#0c131b,#9fd2e8)}.ecomc.theme-a{--bg:#0a0d13;--surface:#ffffff0d;--surface2:#ffffff13;--bd:#ffffff1a;--bd-strong:#ffffff2e;--tx:#f2eee6;--tx2:#aba295;--tx3:#6e685d;--accent:#c9a86b;--accent-dim:#c9a86b73;--focus-ring:#c9a86b29;--input-bg:#0000004d;--dz-bg:#c9a86b0f;--badge-bg:linear-gradient(135deg, #e7d5a8, #b98f4f);--badge-tx:#251b0b;--badge-glow:0 0 0 1px #e7d5a859, 0 6px 16px #b98f4f59;--primary-bg:linear-gradient(135deg, #e0c287, #b98f4f 55%, #8a6f3f);--primary-tx:#1e1608;--glow:0 10px 26px #c9a86b52;--glow-strong:#c9a86b80;--tag-bg:#0a0d139e;--tag-tx:#f2eee6;--tag-bd:#ffffff2e;--shadow:0 14px 34px #00000061;--title-tx:#e7d5a8;--spinner-bd:#1e16084d;--spinner-tx:#1e1608}.ecomc.theme-a:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#c9a86b29,#0000 70%);width:720px;height:300px;position:absolute;top:-140px;left:50%;transform:translate(-50%)}.ecomc.theme-a .toast.ok{color:#a6cc85;background:#82aa6424;border-color:#96be7859}.ecomc.theme-a .toast.err{color:#e8a98a;background:#c8785a21;border-color:#dc8c6e52}.ecomc.theme-a .task-row .terr,.ecomc.theme-a .act.danger{color:#e8a98a}.ecomc.theme-a .tag-ok{color:#e7d5a8;background:#c9a86b24;border-color:#c9a86b6b}.ecomc.theme-a .tag-fail{color:#e8a98a;background:#dc8c6e21;border-color:#dc8c6e61}.ecomc.theme-a .tag-run{color:#b6cce8;background:#8cafe11f;border-color:#8cafe161}.ecomc.theme-a .progress-track{background:#ffffff1f}.ecomc.theme-a .progress-fill{background:linear-gradient(90deg,#e7d5a8,#b98f4f)}.ecomc.theme-a .toggle.off{background:#fff3}.ecomc.theme-a .ai-btn:hover{box-shadow:0 8px 22px #c9a86b61}.ecomc.theme-a .btn:hover{border-color:#c9a86b66}.ecomc.theme-b{--bg:#0c131b;--surface:#ffffff0b;--surface2:#ffffff12;--bd:#ffffff17;--bd-strong:#ffffff29;--tx:#e8eff4;--tx2:#97a6b4;--tx3:#5f6e7c;--accent:#9fd2e8;--accent-dim:#9fd2e880;--focus-ring:#9fd2e829;--input-bg:#040a106b;--dz-bg:#9fd2e80d;--badge-bg:transparent;--badge-tx:#9fd2e8;--badge-glow:0 0 0 1.5px #9fd2e88c, 0 0 0 4px #9fd2e814;--primary-bg:linear-gradient(135deg, #c7e6f5, #5e9ec4);--primary-tx:#07131c;--glow:0 10px 26px #5e9ec452;--glow-strong:#5e9ec480;--tag-bg:#0c131b9e;--tag-tx:#e8eff4;--tag-bd:#ffffff29;--shadow:0 14px 34px #0000005c;--title-tx:#d7e6f0;--spinner-bd:#07131c47;--spinner-tx:#07131c}.ecomc.theme-b:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 50% 0,#000 55%,#0000 100%);mask-image:radial-gradient(120% 100% at 50% 0,#000 55%,#0000 100%)}.ecomc.theme-b .toast.ok{color:#a8d8b0;background:#78b49621;border-color:#8cc8aa52}.ecomc.theme-b .toast.err{color:#e8a9b8;background:#c86e821f;border-color:#dc82a04d}.ecomc.theme-b .task-row .terr,.ecomc.theme-b .act.danger{color:#e8a9b8}.ecomc.theme-b .tag-ok{color:#c6e7f4;background:#9fd2e81f;border-color:#9fd2e861}.ecomc.theme-b .tag-fail{color:#f0c0c9;background:#e696a01f;border-color:#e696a059}.ecomc.theme-b .tag-run{color:#a9cde8;background:#78aad21f;border-color:#78aad259}.ecomc.theme-b .progress-track{background:#ffffff1f}.ecomc.theme-b .progress-fill{background:linear-gradient(90deg,#c7e6f5,#5e9ec4)}.ecomc.theme-b .toggle.off{background:#fff3}.ecomc.theme-b .ai-btn:hover{box-shadow:0 8px 22px #5e9ec466}.ecomc.theme-b .btn:hover{border-color:#9fd2e866}.ecomc .act{text-decoration:none}.ecomc .act:disabled{opacity:.5;cursor:not-allowed}.ecomc .task-row .tcol{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.ecomc .task-row .tacts{align-items:center;gap:4px;display:flex}.ecomc .task-row .tacts .act{padding:2px 6px}.ecomc .task-row .thumb.clickable{cursor:pointer}.ecomc .task-row .thumb .play{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.ecomc .task-row .thumb .play svg{color:#fff;filter:drop-shadow(0 1px 4px #000000a6);opacity:.95;width:22px;height:22px}.ecomc .viewer{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f0d0a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ecomc .viewer-card{background:var(--surface);border:1px solid var(--bd-strong);width:min(880px,96vw);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:14px;padding:18px;display:flex}.ecomc .viewer-head{justify-content:space-between;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.ecomc .viewer-head .viewer-close{border:1px solid var(--bd);background:var(--surface2);width:30px;height:30px;color:var(--tx2);cursor:pointer;border-radius:9px;flex:none;place-items:center;font-size:17px;line-height:1;display:grid}.ecomc .viewer-head .viewer-close:hover{color:var(--accent);border-color:var(--accent-dim)}.ecomc .viewer-video{aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:12px;width:100%;max-height:62vh}.ecomc .viewer-empty{height:200px;color:var(--tx3);background:var(--dz-bg);border:1px dashed var(--accent-dim);border-radius:12px;place-items:center;font-size:13px;display:grid}.ecomc .viewer-meta{color:var(--tx2);flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.ecomc .viewer-actions{flex-wrap:wrap;gap:10px;display:flex}.ecomc .viewer-actions .btn{width:auto;padding:10px 16px}.ecomc .ghost.filled{color:var(--badge-tx);background:var(--badge-bg);box-shadow:var(--badge-glow);border-color:#0000;font-weight:600}.ecomc .ghost.filled:hover{color:var(--badge-tx);opacity:.92}.ecomc .ai-btn .ai-logo{width:22px;height:22px}.ecomc .ai-btn{padding:12px;font-size:14px}
