:root{--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);--gradient-surface:linear-gradient(180deg, #ffffff0f, #fff0);--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;--red:#f87171;--yellow:#fbbf24;--yellow-glow:#fbbf2440;--blue:#38bdf8;--text:#fff;--text-muted:#cbd5e1;--text-subtle:#94a3b8;--text2:#94a3b8;--text3:#475569;--text-dark:#0f172a;--radius:12px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--shadow:0 8px 32px #0006;--shadow-sm:0 2px 8px #00000059;--shadow-md:0 8px 24px #00000080;--shadow-lg:0 16px 48px #000000b3;--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)}.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 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:#fff;background:var(--bg-surface-hover)}.btn-secondary{background:var(--bg-surface-elevated);color:#fff;border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-surface-hover);border-color:var(--border-hover)}.btn-secondary.active{border-color:var(--primary);background:var(--primary-light);color:#fff}.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){transform:translateY(-1px);box-shadow:0 6px 20px #6366f180}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-micro{border:1px solid var(--border);color:#cbd5e1;cursor:pointer;background:#141b2d;border-radius:4px;height:22px;padding:0 6px;font-size:11px}.btn-micro:hover{background:var(--bg-surface-hover);color:#fff}.btn-micro.active{border-color:var(--primary);color:var(--primary-hover);background:#6c8fff40}.btn-danger{color:#fda4af}.btn-danger:hover{color:#fecaca;background:#f8717133;border-color:#f8717180}.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:#fff;background:var(--bg-surface-hover)}.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:#7dd3fc;background:#38bdf840;border:1px solid #38bdf866}.badge-green{color:#34d399;background:#10b98140;border:1px solid #10b98166}.badge-yellow{color:#fbbf24;background:#f59e0b40;border:1px solid #f59e0b66}.hex-input{border:1px solid var(--border);color:#fff;background:#141b2d;border-radius:4px;flex:1;height:32px;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:#fff;font-family:Outfit,sans-serif;font-size:20px;font-weight:700}.batch-title-group p{color:#cbd5e1;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:#070a11;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:#05080f;border-radius:4px;justify-content:center;align-items:center;height:120px;display:flex;position:relative;overflow:hidden}.progress-bar{border-radius:var(--radius-md);background:#ffffff08;border:1px solid #ffffff14;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:#fff;font-weight:600}.progress-bar-file{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;max-width:360px;overflow:hidden}.progress-bar-count{color:#94a3b8}.progress-bar-pct{color:var(--primary);font-weight:700}.progress-bar-track{background:#ffffff1a;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:#fff;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:#fff;font-weight:700}.card-title{font-size:14px}.empty-title{color:#fff;font-size:17px;font-weight:700}.sub-panel{border:1px solid var(--border);border-radius:var(--radius-sm);background:#ffffff08;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}.app-toast[data-v-ab2f31f5]{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:#fecaca;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-a61e0dc3]{bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:1000;-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-hover,#fff3);border-radius:var(--radius-lg,12px);width:min(520px,100% - 32px);box-shadow:0 16px 40px #0009,0 0 24px var(--primary-glow,#6c8fff4d);box-sizing:border-box;background:#131a2af2;justify-content:space-between;gap:16px;padding:10px 14px;position:fixed;left:50%;transform:translate(-50%)}.pwa-banner[data-v-a61e0dc3],.pwa-banner-left[data-v-a61e0dc3]{align-items:center;display:flex}.pwa-banner-left[data-v-a61e0dc3]{gap:12px;min-width:0}.pwa-app-icon[data-v-a61e0dc3]{-o-object-fit:cover;object-fit:cover;border:1px solid #ffffff26;border-radius:9px;flex-shrink:0;width:38px;height:38px}.pwa-app-info[data-v-a61e0dc3]{flex-direction:column;gap:2px;min-width:0;display:flex}.pwa-app-title[data-v-a61e0dc3]{color:#fff;align-items:center;gap:6px;font-size:13px;display:flex}.pwa-tag[data-v-a61e0dc3]{color:#6c8fff;background:#6c8fff26;border:1px solid #6c8fff66;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:700}.pwa-app-desc[data-v-a61e0dc3]{color:var(--text2,#94a3b8);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:11px;overflow:hidden}.pwa-banner-actions[data-v-a61e0dc3]{flex-shrink:0;align-items:center;gap:8px;display:flex}.btn-install[data-v-a61e0dc3]{background:var(--gradient-brand,linear-gradient(135deg,#6c8fff,#a78bfa));color:#fff;cursor:pointer;white-space:nowrap;border:1px solid #ffffff40;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .15s;box-shadow:0 2px 10px #6c8fff66}.btn-install[data-v-a61e0dc3]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #6c8fff99}.btn-dismiss[data-v-a61e0dc3]{width:24px;height:24px;color:var(--text2,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex}.btn-dismiss[data-v-a61e0dc3]:hover{color:#fff;background:#ffffff1a}.pwa-slide-enter-active[data-v-a61e0dc3],.pwa-slide-leave-active[data-v-a61e0dc3]{transition:all .3s cubic-bezier(.16,1,.3,1)}.pwa-slide-enter-from[data-v-a61e0dc3],.pwa-slide-leave-to[data-v-a61e0dc3]{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:#ffffff26;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.font-mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace}.wm-pos-grid{border-radius:var(--radius-sm,6px);border:1px solid var(--border);background:#00000059;gap:4px;padding:4px;display:grid}.wm-pos-btn{color:#94a3b8;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff14;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{color:#fff;background:#6366f133;border-color:#6366f166}.wm-pos-btn.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));color:#fff;border-color:#a5b4fc;font-weight:700;box-shadow:0 0 8px #6366f159}.preset-pills{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.preset-pill{color:#94a3b8;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;transition:all .15s}.preset-pill:hover{color:#fff;background:#6366f133;border-color:#818cf8}.preset-pill.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));color:#fff;border-color:#a5b4fc;font-weight:700;box-shadow:0 0 8px #6366f159}.pos-grid-container{border-radius:var(--radius-sm,6px);border:1px solid var(--border);background:#0000004d;flex-shrink:0;grid-template-columns:repeat(3,1fr);gap:4px;width:130px;padding:6px;display:grid}.pos-grid-cell{aspect-ratio:1;cursor:pointer;color:#94a3b8;-webkit-user-select:none;user-select:none;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;justify-content:center;align-items:center;font-size:13px;font-weight:700;transition:all .15s;display:flex}.pos-grid-cell:hover{color:#fff;background:#6366f140;border-color:#818cf8}.pos-grid-cell.active{background:var(--gradient-brand,linear-gradient(135deg,#6366f1,#8b5cf6));color:#fff;box-shadow:0 0 8px var(--primary-glow,#6366f159);border-color:#a5b4fc}.control-select{border:1px solid var(--border);border-radius:var(--radius-sm,6px);color:#fff;cursor:pointer;background:#141b2d;outline:none;width:100%;height:32px;padding:4px 8px;font-family:inherit;font-size:12px;transition:border-color .15s}.control-select:focus{border-color:var(--primary,#6366f1)}.control-select option{color:#fff;background:#0f172a}.prop-row{margin-bottom:12px}.prop-row:last-child{margin-bottom:0}.prop-label-row{color:#e2e8f0;justify-content:space-between;align-items:center;margin-bottom:5px;font-size:12px;font-weight:500;display:flex}.prop-value{color:var(--primary,#818cf8);font-size:11px}
