*{box-sizing:border-box;margin:0;padding:0}body{-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:13px;overflow:hidden}#app{width:100vw;height:100vh}.toolbar[data-v-9cfbfa29]{background:var(--wb-surface-toolbar);border-right:1px solid var(--wb-border);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;width:52px;padding:8px 6px;display:flex}.tool-group[data-v-9cfbfa29]{flex-direction:column;gap:2px;display:flex}.tools-scroll[data-v-9cfbfa29]{scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex-shrink:1;gap:2px;min-height:0;display:flex;overflow:hidden auto}.tools-scroll[data-v-9cfbfa29]::-webkit-scrollbar{display:none}.scroll-btn[data-v-9cfbfa29]{border-radius:var(--wb-radius-sm);width:40px;height:22px;color:var(--wb-text-secondary);cursor:pointer;transition:all var(--wb-transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.scroll-btn[data-v-9cfbfa29]:hover:not(:disabled){background:var(--wb-surface-hover);color:var(--wb-text)}.scroll-btn[data-v-9cfbfa29]:disabled{opacity:.25;cursor:default}.scroll-icon[data-v-9cfbfa29]{pointer-events:none;width:14px;height:14px}.tool-btn[data-v-9cfbfa29]{border-radius:var(--wb-radius-sm);width:40px;height:40px;color:var(--wb-text-secondary);cursor:pointer;transition:all var(--wb-transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.tool-btn[data-v-9cfbfa29]:hover{background:var(--wb-surface-hover);color:var(--wb-text)}.tool-btn.active[data-v-9cfbfa29]{background:var(--wb-accent);color:#fff}.tool-icon[data-v-9cfbfa29]{pointer-events:none;width:22px;height:22px}.spacer[data-v-9cfbfa29]{flex:1}.canvas-size-wrapper[data-v-9cfbfa29]{margin-bottom:6px;position:relative}.canvas-size-backdrop[data-v-9cfbfa29]{z-index:9998;position:fixed;inset:0}.canvas-size-popover[data-v-9cfbfa29]{background:var(--wb-surface-toolbar);border:1px solid var(--wb-border);z-index:9999;border-radius:8px;min-width:180px;padding:12px 14px;box-shadow:0 2px 8px #0000001a}.popover-title[data-v-9cfbfa29]{color:var(--wb-text);margin-bottom:10px;font-size:13px;font-weight:600}.popover-field[data-v-9cfbfa29]{align-items:center;gap:6px;margin-bottom:8px;display:flex}.popover-label[data-v-9cfbfa29]{color:var(--wb-text-secondary);flex-shrink:0;width:32px;font-size:12px}.popover-input[data-v-9cfbfa29]{border:1px solid var(--wb-border);background:var(--wb-surface);width:70px;height:28px;color:var(--wb-text);text-align:right;border-radius:4px;outline:none;flex:1;padding:0 6px;font-size:13px}.popover-input[data-v-9cfbfa29]:focus{border-color:var(--wb-accent)}.popover-unit[data-v-9cfbfa29]{color:var(--wb-text-secondary);flex-shrink:0;width:20px;font-size:11px}.bg-color-row[data-v-9cfbfa29]{align-items:center;gap:4px;display:flex}.bg-radio-btn[data-v-9cfbfa29]{border:1px solid var(--wb-border);background:var(--wb-surface);width:28px;height:28px;color:var(--wb-text-secondary);cursor:pointer;transition:all var(--wb-transition);border-radius:4px;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.bg-radio-btn[data-v-9cfbfa29]:hover{border-color:var(--wb-text-secondary)}.bg-radio-btn.active[data-v-9cfbfa29]{border-color:var(--wb-accent);box-shadow:0 0 0 1px var(--wb-accent)}.bg-radio-btn--transparent[data-v-9cfbfa29]{background:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%) 50%/8px 8px}.bg-color-fill[data-v-9cfbfa29]{border:1px solid var(--wb-border);border-radius:2px;width:16px;height:16px;display:block}.hidden-color-input[data-v-9cfbfa29]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.popover-actions[data-v-9cfbfa29]{justify-content:flex-end;gap:6px;margin-top:10px;display:flex}.popover-btn[data-v-9cfbfa29]{border:1px solid var(--wb-border);background:var(--wb-surface);color:var(--wb-text);cursor:pointer;transition:all var(--wb-transition);border-radius:4px;padding:4px 12px;font-size:12px}.popover-btn[data-v-9cfbfa29]:hover{background:var(--wb-surface-hover)}.popover-btn.confirm[data-v-9cfbfa29]{background:var(--wb-accent);color:#fff;border-color:var(--wb-accent)}.popover-btn.confirm[data-v-9cfbfa29]:hover{opacity:.9}.color-section[data-v-9cfbfa29]{flex-direction:column;align-items:center;gap:6px;padding:0;display:flex}.color-indicator[data-v-9cfbfa29]{cursor:pointer;width:32px;height:32px;transition:all var(--wb-transition);border:2px solid #0000;border-radius:8px;padding:2px;box-shadow:0 2px 8px #0000001a}.color-indicator[data-v-9cfbfa29]:hover{background:var(--wb-surface-hover);border-color:var(--wb-border)}.color-indicator.active[data-v-9cfbfa29]{border-color:var(--wb-accent);background:var(--wb-accent-light)}.color-indicator.disabled[data-v-9cfbfa29]{opacity:.35;cursor:default;pointer-events:none}.color-swatch[data-v-9cfbfa29]{border:1px solid var(--wb-border);border-radius:6px;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.bg[data-v-9cfbfa29]{border-style:dashed;border-radius:6px}.mixed[data-v-9cfbfa29],.transparent[data-v-9cfbfa29]{background:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%) 50%/8px 8px!important}.mixed-icon[data-v-9cfbfa29]{width:16px;height:16px;color:var(--wb-text-secondary);pointer-events:none}.text-color-swatch[data-v-9cfbfa29]{justify-content:center;align-items:center;display:flex;position:relative}.text-color-icon[data-v-9cfbfa29]{pointer-events:none;width:18px;height:18px;transition:color .15s}.selected[data-v-8ac7fe33]{filter:drop-shadow(0 0 3px #0078d799)}.whiteboard[data-v-316f88b9]{background:var(--wb-canvas-surround);flex:1;position:relative;overflow:hidden}.canvas-wrapper[data-v-316f88b9]{will-change:transform;margin:auto;position:absolute}.canvas[data-v-316f88b9]{display:block}.canvas-toolbar[data-v-316f88b9]{z-index:50;flex-direction:column;gap:2px;display:flex;position:absolute;top:8px;right:8px}.canvas-tb-btn[data-v-316f88b9]{border:1px solid var(--wb-border);background:var(--wb-surface);width:28px;height:28px;color:var(--wb-text);cursor:pointer;transition:all var(--wb-transition);opacity:.85;border-radius:4px;justify-content:center;align-items:center;padding:0;display:flex}.canvas-tb-btn[data-v-316f88b9]:hover:not(:disabled){background:var(--wb-surface-hover);opacity:1}.canvas-tb-btn[data-v-316f88b9]:disabled{opacity:.35;cursor:default}.canvas-tb-btn--danger[data-v-316f88b9]:hover:not(:disabled){color:#ef4444;border-color:#ef4444}.tb-separator[data-v-316f88b9]{background:var(--wb-border);height:1px;margin:2px 4px}.zoom-control[data-v-316f88b9]{color:#fff;z-index:100;background:#000000b3;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-family:system-ui,sans-serif;font-size:13px;display:flex;position:absolute;bottom:16px;right:16px}.zoom-btn[data-v-316f88b9]{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s;display:flex}.zoom-btn[data-v-316f88b9]:hover{background:#ffffff4d}.zoom-percent[data-v-316f88b9]{text-align:center;-webkit-user-select:none;user-select:none;min-width:40px}.text-format-control[data-v-316f88b9]{color:#fff;z-index:100;background:#000000b3;border-radius:6px;align-items:center;gap:2px;padding:4px 6px;font-family:system-ui,sans-serif;font-size:13px;display:flex;position:absolute;bottom:16px;right:16px}.font-size-btn[data-v-316f88b9]{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s;display:flex}.font-size-btn[data-v-316f88b9]:hover{background:#ffffff4d}.font-size-value[data-v-316f88b9]{text-align:center;-webkit-user-select:none;user-select:none;min-width:28px;font-size:12px}.text-align-separator[data-v-316f88b9]{background:#ffffff4d;width:1px;height:16px;margin:0 4px}.text-align-btn[data-v-316f88b9]{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:24px;padding:0;transition:background .15s;display:flex}.text-align-btn[data-v-316f88b9]:hover{background:#ffffff4d}.text-align-btn.active[data-v-316f88b9]{background:#6366f199}.overlay[data-v-eb3b875c]{z-index:100;position:fixed;inset:0}.color-palette[data-v-eb3b875c]{background:var(--wb-surface);border:1px solid var(--wb-border);z-index:101;border-radius:8px;flex-direction:column;gap:14px;min-width:300px;padding:16px;display:flex;box-shadow:0 1px 6px #0000001a}.palette-header[data-v-eb3b875c]{border-bottom:1px solid var(--wb-border);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.palette-title[data-v-eb3b875c]{color:var(--wb-text);font-size:14px;font-weight:600}.current-color[data-v-eb3b875c]{align-items:center;display:flex}.current-swatch[data-v-eb3b875c]{border:2px solid var(--wb-border);border-radius:50%;width:28px;height:28px}.current-swatch.fill[data-v-eb3b875c]{border-radius:6px}.current-transparent[data-v-eb3b875c]{justify-content:center;align-items:center;display:flex;background:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%) 50%/8px 8px!important}.preset-grid[data-v-eb3b875c]{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.color-swatch[data-v-eb3b875c]{cursor:pointer;width:30px;height:30px;transition:all var(--wb-transition);border:2px solid #0000;border-radius:50%;outline:none;padding:0}.color-swatch[data-v-eb3b875c]:hover{border-color:var(--wb-text);box-shadow:var(--wb-shadow-md);z-index:1;transform:scale(1.15)}.color-swatch[data-v-eb3b875c]:active{transform:scale(.95)}.transparent-row[data-v-eb3b875c]{justify-content:center;display:flex}.transparent-swatch[data-v-eb3b875c]{background:repeating-conic-gradient(#ccc 0% 25%,#fff 0% 50%) 50%/8px 8px;justify-content:center;align-items:center;display:flex}.palette-footer[data-v-eb3b875c]{border-top:1px solid var(--wb-border);padding-top:10px}.custom-color[data-v-eb3b875c]{align-items:center;gap:10px;display:flex}.color-picker[data-v-eb3b875c]{border:2px solid var(--wb-border);border-radius:var(--wb-radius-sm);cursor:pointer;background:0 0;width:36px;height:36px;padding:2px}.color-picker[data-v-eb3b875c]::-webkit-color-swatch-wrapper{padding:0}.color-picker[data-v-eb3b875c]::-webkit-color-swatch{border:none;border-radius:4px}.custom-label[data-v-eb3b875c]{color:var(--wb-text-secondary);font-size:13px;font-weight:500}:root,.wb-theme-light{--wb-bg:#f0f2f5;--wb-surface:#fff;--wb-surface-hover:#f5f6f8;--wb-surface-toolbar:#f8f9fb;--wb-text:#1a1a2e;--wb-text-secondary:#6b7280;--wb-border:#e5e7eb;--wb-accent:#6366f1;--wb-accent-light:#eef2ff;--wb-canvas-bg:#fff;--wb-canvas-surround:#e0e0e0;--wb-grid-a:#fff;--wb-grid-b:#f0f0f0;--wb-shadow-sm:0 1px 2px #0000000d;--wb-shadow-md:0 4px 12px #00000014;--wb-shadow-lg:0 8px 24px #0000001f;--wb-radius-sm:8px;--wb-radius-md:12px;--wb-radius-lg:16px;--wb-transition:.2s cubic-bezier(.4, 0, .2, 1)}.wb-theme-dark{--wb-bg:#1a1a2e;--wb-surface:#252540;--wb-surface-hover:#2e2e4a;--wb-surface-toolbar:#202038;--wb-text:#e2e2f0;--wb-text-secondary:#a0a0b8;--wb-border:#3a3a55;--wb-accent:#818cf8;--wb-accent-light:#818cf826;--wb-canvas-bg:#1e1e30;--wb-canvas-surround:#12121f;--wb-grid-a:#2a2a3e;--wb-grid-b:#1e1e30;--wb-shadow-sm:0 1px 2px #0000004d;--wb-shadow-md:0 4px 12px #0006;--wb-shadow-lg:0 8px 24px #00000080}.wb-root[data-v-7dbfb623]{width:100%;height:100%;display:flex;position:relative;overflow:hidden}
