:root{--primary:#4f6df5;--primary-hover:#3d5ce6;--primary-light:#4f6df51a;--primary-glow:#4f6df552;--accent:#4f6df5;--accent-hover:#3d5ce6;--accent2:#8b7df7;--gradient-brand:linear-gradient(135deg, #4f6df5, #6c8fff);--border-accent:#4f6df580;--shadow-glow:0 0 24px #4f6df547;--bg:#f6f7fb;--bg-base:#f6f7fb;--surface:#fff;--bg-surface:#fff;--surface2:#f1f3f9;--bg-surface-elevated:#f1f3f9;--bg-surface-hover:#e7eaf3;--border:#0f172a1a;--border-hover:#0f172a2e;--green:#16a34a;--green-glow:#16a34a2e;--green-soft:#16a34a1a;--red:#dc2626;--red-soft:#dc26261a;--yellow:#d97706;--yellow-glow:#d977062e;--yellow-soft:#d977061a;--amber:#b45309;--amber-soft:#b453091a;--blue:#0284c7;--text:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--text2:#64748b;--text3:#64748b;--radius:12px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--shadow:0 1px 2px #0f172a0f, 0 4px 16px #0f172a14;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 2px 8px #0f172a14, 0 8px 24px #0f172a1a;--shadow-lg:0 4px 12px #0f172a1a, 0 16px 48px #0f172a24;--header-h:56px;--sidebar-w:260px;--inspector-w:320px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root,[data-theme=dark]{--gradient-surface:linear-gradient(180deg, #ffffff0f, #fff0);--text-dark:#0f172a}[data-theme=dark]{--primary:#6c8fff;--primary-hover:#7ea0ff;--primary-light:#6c8fff33;--primary-glow:#6c8fff66;--accent:#6c8fff;--accent-hover:#7ea0ff;--accent2:#a78bfa;--gradient-brand:linear-gradient(135deg, #6c8fff, #a78bfa);--border-accent:#6c8fff99;--shadow-glow:0 0 24px #6c8fff59;--bg:#0b0f19;--bg-base:#0b0f19;--surface:#141b2d;--bg-surface:#141b2d;--surface2:#1e283d;--bg-surface-elevated:#1e283d;--bg-surface-hover:#27344f;--border:#ffffff1f;--border-hover:#ffffff38;--green:#34d399;--green-glow:#34d39940;--green-soft:#34d39929;--red:#f87171;--red-soft:#f8717129;--yellow:#fbbf24;--yellow-glow:#fbbf1840;--yellow-soft:#fbbf1829;--amber:#fbbf24;--amber-soft:#fbbf1829;--blue:#38bdf8;--text:#fff;--text-muted:#cbd5e1;--text-subtle:#94a3b8;--text2:#94a3b8;--text3:#94a3b8;--shadow:0 8px 32px #0006;--shadow-sm:0 2px 8px #00000059;--shadow-md:0 8px 24px #00000080;--shadow-lg:0 16px 48px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.batch-overlay{background:var(--bg-base);height:auto;min-height:0;color:var(--text);z-index:1;flex-direction:column;flex:1;padding:16px 24px;display:flex;position:relative;overflow:hidden}.btn{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;outline:none;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .15s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn svg{width:14px;height:14px}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-hover)}.btn-secondary.active{border-color:var(--primary);background:var(--primary-light);color:var(--text)}.btn-primary{background:var(--gradient-brand);color:#fff;box-shadow:0 4px 14px var(--primary-glow);border:1px solid #fff3}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px var(--primary-glow);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-micro{background:var(--surface);border:1px solid var(--border);height:28px;color:var(--text-muted);cursor:pointer;border-radius:4px;padding:0 8px;font-size:11px}.btn-micro:hover{background:var(--surface-2);color:var(--text)}.btn-micro.active{background:var(--brand-soft);border-color:var(--primary);color:var(--primary)}.btn-danger,.btn-danger:hover{color:var(--danger)}.btn-danger:hover{background:var(--danger-soft);border-color:var(--danger)}.icon-btn{border-radius:calc(var(--radius-sm) - 2px);width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.icon-btn:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.icon-btn.active{color:#fff;background:var(--primary)}.icon-btn:disabled{opacity:.45;cursor:not-allowed;color:var(--text-subtle)}.icon-btn svg{width:15px;height:15px}.badge-tag{letter-spacing:.4px;text-transform:uppercase;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:700}.badge-blue{color:var(--blue);background:#38bdf82e;border:1px solid #38bdf85c}[data-theme=dark] .badge-blue{background:#38bdf840}.badge-green{background:var(--success-soft);color:var(--success);border:1px solid #10b98166}.badge-yellow{background:var(--warning-soft);color:var(--warning);border:1px solid #f59e0b66}.hex-input{background:var(--surface);border:1px solid var(--border);height:32px;color:var(--text);border-radius:4px;flex:1;padding:4px 8px;font-size:12px}.batch-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:16px;min-width:0;margin-bottom:16px;padding-bottom:16px;display:flex}.batch-title-group{flex:1;min-width:0}.batch-title-group h2{color:var(--text);font-size:20px;font-weight:700}.batch-title-group p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:13px;overflow:hidden}.workbench-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.workbench-actions .btn{flex:none;height:32px;margin:0;padding:0 12px}.batch-item-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all .15s;overflow:hidden}.batch-item-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.wm-batch-layout{flex:1;gap:20px;min-height:0;display:flex;overflow:hidden}.wm-batch-sidebar{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-shrink:0;gap:12px;width:330px;padding:16px}.wm-batch-content,.wm-batch-sidebar{flex-direction:column;display:flex;overflow-y:auto}.wm-batch-content{flex:1;min-width:0;padding-right:4px}.wm-batch-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding-bottom:24px;display:grid}.pdf-batch-layout,.ppt-batch-layout{flex:1;gap:20px;min-height:0;display:flex;overflow:hidden}.pdf-batch-sidebar,.ppt-batch-sidebar{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;flex-shrink:0;gap:12px;width:340px;padding:16px;display:flex;overflow-y:auto}.pdf-batch-content,.ppt-batch-content{flex-direction:column;flex:1;gap:12px;min-width:0;padding-right:4px;display:flex;overflow-y:auto}.pdf-sort-bar,.ppt-sort-bar{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.pdf-batch-grid,.ppt-batch-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;padding-bottom:24px;display:grid}.pdf-preview-modal,.ppt-preview-modal{z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pdf-preview-backdrop,.ppt-preview-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000c7;position:absolute;inset:0}.pdf-preview-window,.ppt-preview-window{z-index:101;background:var(--bg-surface);border:1px solid var(--border-hover);border-radius:var(--radius-lg);flex-direction:column;width:min(92vw,1100px);height:88vh;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 64px #000000d9}.pdf-preview-header,.ppt-preview-header{border-bottom:1px solid var(--border);background:var(--bg-surface-elevated);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.pdf-preview-body,.ppt-preview-body{background:var(--surface-2);flex:1;justify-content:center;align-items:center;min-height:0;padding:24px;display:flex;position:relative;overflow:auto}.pdf-preview-canvas-wrap,.ppt-preview-canvas-wrap{justify-content:center;align-items:center;transition:transform .15s;display:flex}.pdf-preview-footer,.ppt-preview-footer{border-top:1px solid var(--border);background:var(--bg-surface-elevated);justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.btn-xs{height:24px;padding:0 8px;font-size:11px}.file-btn-wrap{justify-content:center;align-items:center;gap:6px;display:inline-flex}.highlight-green{color:var(--green)}.batch-thumb-wrap{background:var(--surface-2);border-radius:4px;justify-content:center;align-items:center;height:120px;display:flex;position:relative;overflow:hidden}.progress-bar{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:18px;padding:14px 20px}.progress-bar-head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.progress-bar-group{align-items:center;gap:10px;min-width:0;display:flex}.progress-bar-status{color:var(--text);font-weight:600}.progress-bar-file{white-space:nowrap;text-overflow:ellipsis;max-width:360px;overflow:hidden}.progress-bar-count,.progress-bar-file{color:var(--text-subtle)}.progress-bar-pct{color:var(--primary);font-weight:700}.progress-bar-track{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6,#06b6d4);height:100%;transition:width .15s}.thumb-badge{color:#fff;background:#000c;position:absolute;top:4px;left:4px}.thumb-img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}.thumb-meta{flex-direction:column;gap:4px;padding:8px 10px;display:flex}.thumb-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.hint-xs{color:var(--text-subtle);font-size:10px}.field-label{color:var(--text-muted);margin-bottom:4px;font-size:11px;display:block}.panel-title{justify-content:space-between;align-items:center;font-size:13px;display:flex}.card-title,.panel-title{color:var(--text);font-weight:700}.card-title{font-size:14px}.empty-title{color:var(--text);font-size:17px;font-weight:700}.sub-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:4px;padding:10px}.input-sm{width:100%;font-size:11px}.row-8{gap:8px}.row-12,.row-8{align-items:center;display:flex}.row-12{gap:12px}.content-page{background:var(--bg);width:100%;min-height:100vh;color:var(--text)}.content-header{z-index:20;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;height:60px;padding:0 24px;position:sticky;top:0}.ch-brand,.content-header{align-items:center;display:flex}.ch-brand{color:var(--text);gap:10px;text-decoration:none}.ch-logo{background:var(--gradient-brand);color:#fff;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.ch-logo svg{width:17px;height:17px}.ch-title{letter-spacing:-.01em;font-size:15px;font-weight:700}.ch-actions{align-items:center;gap:10px;display:flex}.ch-back{color:var(--text2);font-size:13px;text-decoration:none}.ch-back:hover{color:var(--text)}.content-article{max-width:780px;margin:0 auto;padding:48px 24px 72px}.content-article h1{letter-spacing:-.02em;color:var(--text);margin:0;font-size:30px;line-height:1.3}.content-lead{color:var(--text-muted);margin:14px 0 0;font-size:16px;line-height:1.7}.content-article h2{letter-spacing:-.01em;color:var(--text);margin:40px 0 0;font-size:21px;font-weight:700}.content-article ol,.content-article p,.content-article ul{color:var(--text2);margin:14px 0 0;font-size:14.5px;line-height:1.85}.content-article ol,.content-article ul{padding-left:22px}.content-article li{margin-top:6px}.content-article strong{color:var(--text)}.content-article a{color:var(--primary);text-underline-offset:3px}.content-article a:hover{color:var(--primary-hover)}.content-steps{counter-reset:step;margin:20px 0 0;padding:0;list-style:none}.content-steps li{counter-increment:step;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 14px;padding:18px 18px 18px 62px;position:relative}.content-steps li:before{content:counter(step);background:var(--primary-light);width:28px;height:28px;color:var(--primary);border-radius:8px;place-items:center;font-size:13px;font-weight:700;display:grid;position:absolute;top:20px;left:18px}.content-steps strong{margin-bottom:4px;font-size:15px;display:block}.content-steps p{margin:0;font-size:13.5px}.content-note{border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius-sm);background:var(--surface);color:var(--text2);margin:18px 0 0;padding:14px 16px;font-size:13.5px;line-height:1.75}.content-faq{margin-top:18px}.content-faq details{border-bottom:1px solid var(--border);padding:15px 0}.content-faq summary{color:var(--text);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:15px;font-weight:500;list-style:none;display:flex}.content-faq summary::-webkit-details-marker{display:none}.content-faq summary:after{content:"+";color:var(--text3);font-size:18px;font-weight:400;transition:transform .2s}.content-faq details[open] summary:after{transform:rotate(45deg)}.content-faq p{margin:10px 0 0;font-size:13.5px;line-height:1.75}.content-cta-band{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg,16px);margin:44px 0 0;padding:28px 24px}.content-cta-band p{color:var(--text2);margin:0 0 18px;font-size:14px}a.content-cta{color:#fff;background:var(--gradient-brand);border-radius:var(--radius);height:44px;box-shadow:0 2px 12px var(--primary-glow);border:0;place-items:center;padding:0 26px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-grid}a.content-cta:hover{box-shadow:0 4px 18px var(--primary-glow);color:#fff;transform:translateY(-1px)}@media (width<=640px){.content-article{padding:32px 18px 56px}.content-article h1{font-size:25px}}.app-toast[data-v-f6a4a542]{top:calc(72px + var(--safe-top,0px));z-index:1100;border:1px solid color-mix(in srgb,var(--red,#f87171) 45%,transparent);border-radius:var(--radius-md,10px);background:color-mix(in srgb,var(--surface,#141b2d) 92%,var(--red,#f87171));max-width:min(420px,100vw - 32px);box-shadow:var(--shadow-md,0 8px 24px #00000080);color:var(--red,#f87171);text-align:center;cursor:pointer;padding:10px 16px;font-size:13px;font-weight:500;line-height:1.45;position:fixed;left:50%;transform:translate(-50%)}.pwa-banner[data-v-337e5807]{bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:1000;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-hover,var(--border));border-radius:var(--radius-lg,12px);width:min(520px,100% - 32px);box-shadow:var(--shadow-lg),0 0 24px var(--primary-glow);box-sizing:border-box;justify-content:space-between;gap:16px;padding:10px 14px;position:fixed;left:50%;transform:translate(-50%)}.pwa-banner[data-v-337e5807],.pwa-banner-left[data-v-337e5807]{align-items:center;display:flex}.pwa-banner-left[data-v-337e5807]{gap:12px;min-width:0}.pwa-app-icon[data-v-337e5807]{-o-object-fit:cover;object-fit:cover;border:1px solid var(--border);border-radius:9px;flex-shrink:0;width:38px;height:38px}.pwa-app-info[data-v-337e5807]{flex-direction:column;gap:2px;min-width:0;display:flex}.pwa-app-title[data-v-337e5807]{color:var(--text);align-items:center;gap:6px;font-size:13px;display:flex}.pwa-tag[data-v-337e5807]{color:var(--brand);background:var(--brand-soft);border:1px solid var(--border-accent);border-radius:4px;padding:1px 5px;font-size:9px;font-weight:700}.pwa-app-desc[data-v-337e5807]{color:var(--text-muted,#475569);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;overflow:hidden}.pwa-banner-actions[data-v-337e5807]{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-install[data-v-337e5807]{background:var(--gradient-brand,linear-gradient(135deg,#4f6df5,#6c8fff));border:1px solid var(--border-hover);color:#fff;cursor:pointer;box-shadow:0 2px 10px var(--primary-glow);white-space:nowrap;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s}.btn-install[data-v-337e5807]:hover{box-shadow:0 4px 14px var(--primary-glow);transform:translateY(-1px)}.btn-dismiss[data-v-337e5807]{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex}.btn-dismiss[data-v-337e5807]:hover{color:var(--text);background:var(--surface-2)}.pwa-slide-enter-active[data-v-337e5807],.pwa-slide-leave-active[data-v-337e5807]{transition:all .3s cubic-bezier(.16,1,.3,1)}.pwa-slide-enter-from[data-v-337e5807],.pwa-slide-leave-to[data-v-337e5807]{opacity:0;transform:translate(-50%,20px)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.font-mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace}.wm-pos-grid{border-radius:var(--radius-sm,6px);gap:4px;padding:4px;display:grid}.wm-pos-btn,.wm-pos-grid{background:var(--surface-2);border:1px solid var(--border)}.wm-pos-btn{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:6px 4px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s;display:flex}.wm-pos-btn:hover{background:var(--brand-soft);border-color:var(--border-accent);color:var(--text)}.wm-pos-btn.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));border-color:var(--border-accent);color:#fff;box-shadow:var(--shadow-glow);font-weight:700}.preset-pills{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.preset-pill{border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s}.preset-pill:hover{color:var(--text);background:var(--brand-soft);border-color:var(--border-accent)}.preset-pill.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));border-color:var(--border-accent);color:#fff;box-shadow:var(--shadow-glow);font-weight:700}.pos-grid-container{border-radius:var(--radius-sm,6px);flex-shrink:0;grid-template-columns:repeat(3,1fr);gap:4px;width:130px;padding:6px;display:grid}.pos-grid-cell,.pos-grid-container{background:var(--surface-2);border:1px solid var(--border)}.pos-grid-cell{aspect-ratio:1;cursor:pointer;color:var(--text-muted);-webkit-user-select:none;user-select:none;border-radius:4px;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:all .15s;display:flex}.pos-grid-cell:hover{background:var(--brand-soft);border-color:var(--border-accent);color:var(--text)}.pos-grid-cell.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));border-color:var(--border-accent);color:#fff;box-shadow:var(--shadow-glow)}.control-select{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm,6px);width:100%;height:32px;color:var(--text);cursor:pointer;outline:none;padding:4px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.control-select:focus{border-color:var(--primary)}.control-select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.control-select option{background:var(--surface);color:var(--text)}.prop-row{margin-bottom:12px}.prop-row:last-child{margin-bottom:0}.prop-label-row{color:var(--text);justify-content:space-between;align-items:center;margin-bottom:5px;font-size:12px;font-weight:500;display:flex}.prop-value{color:var(--primary);font-size:11px}
