html{-webkit-text-size-adjust:100%;-webkit-user-select:none;user-select:none}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--app-bg:#e8e8ec;--ui-text:#282834e6;--ui-text-strong:#1e1e28eb;--ui-text-muted:#373744e0;--ui-text-hint:#3c3c48d9;--ui-text-subtitle:#2d2d3ad1;--ui-text-dim:#5a5a66d9;--ui-glass-bg:#c8c8c880;--ui-backdrop:saturate(1.65) blur(22px);--ui-chrome-inset:0 0 0 1px #80808033 inset;--ui-chrome-ambient:0 0 0 1px #80808033 inset;--ui-ring-outer:0 0 1px 1px #0000001a inset;--ui-divider:#00000014;--ui-rule:#8080804d;--ui-input-border:#80808059;--ui-input-bg:#ffffff47;--ui-focus-border:#a096e6d9;--ui-focus-ring:#cac8f873;--ui-accent:#a096e6;--ui-note-bg:#cac8f852;--ui-item-hover:#0097ff;--ui-item-active:#0097ff;--ui-tab-hover:#ffffff59;--ui-btn-ghost-hover:#0000000f;--ui-btn-ghost-hover-strong:#0000000a;--ui-btn-minimize-hover-fg:#1e1e28f2;--ui-btn-solid-bg:#ffffff6b;--ui-btn-solid-border:#fff6;--ui-btn-solid-hover:#c8c8c894;--ui-zoom-bar-extra:0 0 0 1px #80808033 inset;--ui-floating-chrome:var(--ui-chrome-inset), var(--ui-zoom-bar-extra);--ui-floating-radius:12px;--ui-preview-chrome:#ffffff57;--ui-preview-border:#0000000f;--ui-preview-inset:0 0 0 1px #fff6 inset;--ui-preview-shadow:0 8px 32px #0000001a}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-bg:#222;--ui-text:#ebecf5eb;--ui-text-strong:#f5f6fcf5;--ui-text-muted:#c3c6dce0;--ui-text-hint:#b4b8cde0;--ui-text-subtitle:#d2d4e4e6;--ui-text-dim:#a0a5bee0;--ui-glass-bg:#00000080;--ui-backdrop:saturate(1.65) blur(22px);--ui-chrome-inset:0 0 0 1px #80808033 inset;--ui-chrome-ambient:0 0 0 1px #80808033 inset;--ui-ring-outer:0 0 1px 1px #00000073 inset;--ui-divider:#ffffff1a;--ui-rule:#ffffff2e;--ui-input-border:#fff3;--ui-input-bg:#ffffff14;--ui-focus-border:#beaffff2;--ui-focus-ring:#8273dc73;--ui-accent:#beafff;--ui-note-bg:#6e5fc852;--ui-item-hover:#0097ff;--ui-item-active:#0097ff;--ui-tab-hover:#ffffff1a;--ui-btn-ghost-hover:#ffffff1a;--ui-btn-ghost-hover-strong:#ffffff14;--ui-btn-minimize-hover-fg:#f5f6fcfa;--ui-btn-solid-bg:#ffffff1a;--ui-btn-solid-border:#ffffff2e;--ui-btn-solid-hover:#ffffff2e;--ui-zoom-bar-extra:0 0 0 1px #80808033 inset;--ui-floating-chrome:var(--ui-chrome-inset), var(--ui-zoom-bar-extra);--ui-floating-radius:12px;--ui-preview-chrome:#1c1e267a;--ui-preview-border:#ffffff1a;--ui-preview-inset:0 0 0 1px #ffffff1f inset;--ui-preview-shadow:0 8px 32px #00000073}}html,body{touch-action:manipulation;overscroll-behavior:none;color:var(--ui-text);margin:0}#app{-webkit-user-select:none;user-select:none;touch-action:manipulation;width:100vw;height:100vh}.sel-stack-bar[data-v-aec7cacf]{z-index:7;border-radius:var(--ui-floating-radius,12px);background:var(--ui-glass-bg);-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);color:var(--ui-text);pointer-events:auto;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;padding:4px 6px;font-size:12px;display:inline-flex;position:absolute;transform:translate(-50%)}.sel-stack-btn[data-v-aec7cacf]{border:1px solid var(--ui-btn-solid-border);background:var(--ui-btn-solid-bg);height:28px;color:var(--ui-text-strong);cursor:pointer;box-sizing:border-box;border-radius:8px;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.sel-stack-btn[data-v-aec7cacf]:hover{background:var(--ui-btn-solid-hover)}.sel-stack-btn[data-v-aec7cacf]:active{transform:translateY(1px)}.sel-stack-btn svg[data-v-aec7cacf]{flex-shrink:0;width:16px;height:16px;display:block}.sel-stack-btn-label[data-v-aec7cacf]{font-variant-numeric:tabular-nums}#draw-board[data-v-7a2a97f9]{width:100%;height:100%;display:flex;position:relative}.draw_board_tmp_canvas[data-v-7a2a97f9]{z-index:1;touch-action:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.board-ws-reconnect-overlay[data-v-7a2a97f9]{z-index:5;pointer-events:all;background:#28282880;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.board-ws-reconnect-spinner[data-v-7a2a97f9]{border:3px solid #0000001f;border-top-color:var(--ui-accent,#0097ff);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite board-ws-reconnect-spin-7a2a97f9}@keyframes board-ws-reconnect-spin-7a2a97f9{to{transform:rotate(360deg)}}.draw-board-zoom-bar[data-v-7a2a97f9]{left:max(12px, env(safe-area-inset-left,0px));right:max(12px, env(safe-area-inset-right,0px));bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:6;border-radius:var(--ui-floating-radius);isolation:isolate;background:var(--ui-glass-bg);-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);color:var(--ui-text);align-items:center;gap:10px;width:fit-content;padding:6px 12px;font-size:12px;display:flex;position:absolute;transform:translateZ(0)}.draw-board-toolbar-start[data-v-7a2a97f9]{flex-shrink:0;align-items:center;gap:10px;display:flex}.draw-board-toolbar-spacer[data-v-7a2a97f9]{flex:1;min-width:8px}.draw-board-toolbar-end[data-v-7a2a97f9]{flex-shrink:0;align-items:center;display:flex}.draw-board-icon-btn[data-v-7a2a97f9]{box-sizing:border-box;border:1px solid var(--ui-btn-solid-border);background:var(--ui-btn-solid-bg);cursor:pointer;width:28px;height:28px;color:var(--ui-text-strong);border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.draw-board-icon-btn[data-v-7a2a97f9]:hover:not(:disabled){background:var(--ui-btn-solid-hover)}.draw-board-icon-btn[data-v-7a2a97f9]:disabled{opacity:.45;cursor:not-allowed}.draw-board-icon-btn--danger[data-v-7a2a97f9]:not(:disabled){color:#c53030}.draw-board-icon-btn--danger[data-v-7a2a97f9]:hover:not(:disabled){background:#c530301f}.draw-board-toolbar-svg[data-v-7a2a97f9]{width:18px;height:18px;display:block}.draw-board-zoom-pct[data-v-7a2a97f9]{text-align:center;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;min-width:40px;font-weight:500}.draw-board-zoom-btn[data-v-7a2a97f9]{border:1px solid var(--ui-btn-solid-border);background:var(--ui-btn-solid-bg);cursor:pointer;width:28px;height:28px;color:var(--ui-text-strong);border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;display:inline-flex}.draw-board-zoom-btn[data-v-7a2a97f9]:hover{background:var(--ui-btn-solid-hover)}.draw-board-zoom-btn-svg[data-v-7a2a97f9]{width:18px;height:18px;display:block}.draw-board-zoom-divider[data-v-7a2a97f9]{background:var(--ui-btn-solid-border);opacity:.65;flex-shrink:0;width:1px;height:18px}.draw_board_pre_canvas[data-v-7a2a97f9]{right:max(20px, env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:2;pointer-events:none;border-radius:var(--ui-floating-radius);isolation:isolate;background:var(--ui-glass-bg);width:40%;height:40%;-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);position:absolute;overflow:hidden}.draw_board_pre_canvas_el[data-v-7a2a97f9]{width:100%;height:100%;display:block}.clear-canvas-overlay[data-v-7a2a97f9]{z-index:270;padding:max(16px, env(safe-area-inset-top,0px)) max(16px, env(safe-area-inset-right,0px)) max(16px, env(safe-area-inset-bottom,0px)) max(16px, env(safe-area-inset-left,0px));box-sizing:border-box;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000061;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.clear-canvas-panel[data-v-7a2a97f9]{width:min(320px, calc(100vw - 32px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));border-radius:var(--ui-floating-radius);isolation:isolate;background:var(--ui-glass-bg);max-height:min(420px,85dvh);-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);color:var(--ui-text);outline:none;flex-direction:column;display:flex;overflow:hidden}.clear-canvas-dialog-header[data-v-7a2a97f9]{border-bottom:1px solid var(--ui-divider);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;display:flex}.clear-canvas-dialog-title[data-v-7a2a97f9]{min-width:0;color:var(--ui-text-strong);flex:1;margin:0;font-size:14px;font-weight:600}.clear-canvas-btn-minimize[data-v-7a2a97f9]{width:32px;height:32px;color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.clear-canvas-btn-minimize[data-v-7a2a97f9]:hover{background:var(--ui-btn-ghost-hover);color:var(--ui-btn-minimize-hover-fg)}.clear-canvas-btn-minimize-icon[data-v-7a2a97f9]{width:20px;height:20px}.clear-canvas-inner[data-v-7a2a97f9]{flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px 12px 10px;font-size:12px;line-height:1.45;display:flex;overflow:auto}.clear-canvas-lead[data-v-7a2a97f9]{color:var(--ui-text);margin:0}.clear-canvas-lead strong[data-v-7a2a97f9]{color:var(--ui-text-strong);font-weight:600}.clear-canvas-note[data-v-7a2a97f9]{color:var(--ui-text-hint);border-radius:16px;margin:0;padding:6px 8px}.clear-canvas-actions[data-v-7a2a97f9]{border-top:1px solid var(--ui-divider);flex-shrink:0;justify-content:flex-end;gap:8px;padding:10px 12px 12px;display:flex}.clear-canvas-action-btn[data-v-7a2a97f9]{border:1px solid var(--ui-btn-solid-border);background:var(--ui-btn-solid-bg);min-width:72px;height:32px;color:var(--ui-text-strong);cursor:pointer;border-radius:6px;padding:0 14px;font-size:12px;font-weight:500}.clear-canvas-action-btn[data-v-7a2a97f9]:hover:not(:disabled){background:var(--ui-btn-solid-hover)}.clear-canvas-action-btn[data-v-7a2a97f9]:disabled{opacity:.55;cursor:not-allowed}.clear-canvas-action-btn--danger[data-v-7a2a97f9]{color:#c53030;border-color:#c5303073}.clear-canvas-action-btn--danger[data-v-7a2a97f9]:hover:not(:disabled){background:#c530301f}.clear-canvas-action-btn--primary[data-v-7a2a97f9]{color:#0097ff;border-color:#0097ff73}.clear-canvas-action-btn--primary[data-v-7a2a97f9]:hover:not(:disabled){background:#0097ff1f}.clear-canvas-dlg-enter-active[data-v-7a2a97f9],.clear-canvas-dlg-leave-active[data-v-7a2a97f9]{transition:opacity .2s}.clear-canvas-dlg-enter-active .clear-canvas-panel[data-v-7a2a97f9],.clear-canvas-dlg-leave-active .clear-canvas-panel[data-v-7a2a97f9]{transition:transform .2s,opacity .2s}.clear-canvas-dlg-enter-from[data-v-7a2a97f9],.clear-canvas-dlg-leave-to[data-v-7a2a97f9]{opacity:0}.clear-canvas-dlg-enter-from .clear-canvas-panel[data-v-7a2a97f9],.clear-canvas-dlg-leave-to .clear-canvas-panel[data-v-7a2a97f9]{opacity:0;transform:scale(.96)}.tol-color-row[data-v-beb75ffb]{width:100%;color:var(--ui-text);align-items:center;gap:8px;font-size:12px;display:flex}.tol-color-row .tol-label[data-v-beb75ffb]{color:var(--ui-text-muted);flex:0 0 88px}.tol-color-wrap[data-v-beb75ffb]{flex:1;align-items:center;min-width:0;display:flex}.tol-color-native[data-v-beb75ffb]{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);cursor:pointer;box-sizing:border-box;appearance:none;border-radius:16px;width:100%;min-width:0;max-width:100%;height:28px;padding:0}.tol-color-native[data-v-beb75ffb]::-webkit-color-swatch-wrapper{padding:2px}.tol-color-native[data-v-beb75ffb]::-webkit-color-swatch{border:none;border-radius:16px}.tol-color-native[data-v-beb75ffb]::-moz-color-swatch{border:none;border-radius:16px}.tol-color-native[data-v-beb75ffb]:focus{border-color:var(--ui-focus-border);box-shadow:0 0 0 2px var(--ui-focus-ring);outline:none}#shapes-section{box-sizing:border-box;top:max(20px, env(safe-area-inset-top,0px));isolation:isolate;background:var(--ui-glass-bg);width:fit-content;height:44px;-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);color:var(--ui-text);border-radius:var(--ui-floating-radius);z-index:100;align-items:center;gap:8px;margin:auto;padding:8px;display:flex;position:fixed;left:0;right:0;overflow:hidden}.shapes-section-item{box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:relative}.shapes-section-item svg{width:20px;height:20px}.shapes-section-item-active,.shapes-section-item:hover{background:var(--ui-item-active)}.shapes-section-canvas-settings{cursor:pointer}.canvas-settings-panel{box-sizing:border-box;border-radius:var(--ui-floating-radius);isolation:isolate;background:var(--ui-glass-bg);min-height:0;max-height:min(560px,85dvh);-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);flex-direction:column;display:flex;position:relative;overflow:hidden}.canvas-settings-stack{z-index:3;border-radius:inherit;background:0 0;flex-direction:column;flex:auto;min-height:0;display:flex;position:relative}.canvas-settings-dialog-header{border-bottom:1px solid var(--ui-divider);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;display:flex}.canvas-settings-dialog-title{min-width:0;color:var(--ui-text-strong);flex:1;margin:0;font-size:14px;font-weight:600}.canvas-settings-btn-minimize{width:32px;height:32px;color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.canvas-settings-btn-minimize:hover{background:var(--ui-btn-ghost-hover);color:var(--ui-btn-minimize-hover-fg)}.canvas-settings-btn-minimize-icon{width:20px;height:20px}.canvas-settings-inner{-webkit-overflow-scrolling:touch;background:0 0;flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px 12px 14px;display:flex;overflow:hidden auto}.canvas-settings-hint{color:var(--ui-text-hint);margin:0;font-size:12px;line-height:1.45}.canvas-settings-note{color:var(--ui-text-hint);background:var(--ui-note-bg);border-radius:16px;margin:0;padding:6px 8px;font-size:12px;line-height:1.45}.canvas-settings-note--tight{margin-top:-4px}.canvas-settings-subtitle{color:var(--ui-text-subtitle);border-bottom:1px solid var(--ui-divider);margin:4px 0 0;padding-bottom:2px;font-size:12px;font-weight:600}.canvas-settings-muted{opacity:.45;pointer-events:none}.canvas-settings-tool-colors{flex-direction:column;gap:8px;width:100%;display:flex}.canvas-settings-panel .tol-row{color:var(--ui-text);align-items:center;gap:8px;font-size:12px;display:flex}.canvas-settings-panel .tol-row.tol-check{cursor:pointer;gap:6px}.canvas-settings-panel .tol-row.tol-check .tol-label{flex:none}.canvas-settings-panel .tol-label{color:var(--ui-text-muted);flex:0 0 88px}.canvas-settings-panel .tol-input{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);min-width:0;height:28px;color:var(--ui-text);box-sizing:border-box;border-radius:16px;flex:1;padding:0 8px;font-size:12px}.canvas-settings-panel .tol-input:focus{border-color:var(--ui-focus-border);box-shadow:0 0 0 2px var(--ui-focus-ring);outline:none}.canvas-settings-panel .tol-input-text{font-family:ui-monospace,monospace}.canvas-settings-panel .tol-input.canvas-settings-tol-num{flex:1 0 52px;min-width:52px}.canvas-settings-unit{color:var(--ui-text-dim);flex:none;font-size:11px}.canvas-settings-panel .tol-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--ui-accent);border-radius:16px}.canvas-settings-btn{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);cursor:pointer;height:28px;color:var(--ui-text);border-radius:16px;align-self:stretch;margin-top:2px;padding:0 12px;font-size:12px}.canvas-settings-btn:hover{background:var(--ui-btn-ghost-hover-strong)}@media (width<=639px){.canvas-settings-panel{max-height:min(72dvh,520px)}}.canvas-settings-popover-enter-active,.canvas-settings-popover-leave-active{transition:opacity .2s}.canvas-settings-popover-enter-from,.canvas-settings-popover-leave-to{opacity:0}.shapes-section-span{background-color:var(--ui-rule);pointer-events:none;justify-content:center;align-items:center;width:1px;height:60%;margin:2px;display:flex;position:relative}@media (width<=639px){#shapes-section{top:50%;left:auto;right:max(8px, env(safe-area-inset-right,0px));-webkit-overflow-scrolling:touch;flex-direction:column;gap:8px;width:fit-content;height:fit-content;max-height:calc(100dvh - 24px);margin:0;padding:10px 8px;overflow:hidden auto;transform:translateY(-50%)}.shapes-section-span{width:60%;height:1px}}.tol-preset-color-block[data-v-93e43969]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-label[data-v-93e43969]{color:var(--ui-text-muted);margin-top:4px;line-height:1.3}.tol-value-col[data-v-93e43969]{width:100%;min-width:0}.tol-preset-color-row[data-v-93e43969]{grid-template-columns:repeat(4,minmax(28px,36px)) 1px minmax(0,1fr);align-items:center;gap:6px;width:100%;display:grid}.tol-preset-color-chip[data-v-93e43969]{aspect-ratio:1;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;justify-self:center;align-items:center;width:100%;max-width:36px;height:auto;padding:0;display:flex}.tol-preset-color-chip[data-v-93e43969]:hover{border-color:var(--ui-focus-border)}.tol-preset-color-chip--on[data-v-93e43969]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-preset-color-swatch[data-v-93e43969]{box-sizing:border-box;border:1px solid #0000001f;border-radius:6px;width:20px;height:20px;display:block}.tol-preset-divider[data-v-93e43969]{background:var(--ui-divider);border-radius:1px;width:1px;height:28px;margin:0 auto}.tol-preset-color-custom[data-v-93e43969]{flex:unset;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);cursor:pointer;box-sizing:border-box;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;min-width:0;min-height:36px;max-height:36px;margin:0;padding:0 6px;display:flex}.tol-preset-color-custom[data-v-93e43969]:hover{border-color:var(--ui-focus-border)}.tol-preset-color-custom--on[data-v-93e43969]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-preset-color-native[data-v-93e43969]{cursor:pointer;appearance:none;background:0 0;border:none;border-radius:6px;width:100%;max-width:100%;height:22px;padding:0}.tol-preset-color-native[data-v-93e43969]::-webkit-color-swatch-wrapper{padding:0}.tol-preset-color-native[data-v-93e43969]::-webkit-color-swatch{border:1px solid #00000026;border-radius:6px}.tol-preset-color-native[data-v-93e43969]::-moz-color-swatch{border:1px solid #00000026;border-radius:6px}.tol-preset-width-block[data-v-eb2c83ac]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-label[data-v-eb2c83ac]{color:var(--ui-text-muted);margin-top:4px;line-height:1.3}.tol-value-col[data-v-eb2c83ac]{width:100%;min-width:0}.tol-preset-width-row[data-v-eb2c83ac]{grid-template-columns:repeat(4,minmax(28px,36px)) 1px minmax(0,1fr);align-items:center;gap:6px;width:100%;display:grid}.tol-preset-width-chip[data-v-eb2c83ac]{aspect-ratio:1;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;max-width:36px;height:auto;color:var(--ui-text);cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;justify-self:center;align-items:center;padding:0;display:flex}.tol-preset-width-chip[data-v-eb2c83ac]:hover{border-color:var(--ui-focus-border)}.tol-preset-width-chip--on[data-v-eb2c83ac]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-preset-width-svg[data-v-eb2c83ac]{width:100%;height:16px;display:block}.tol-preset-divider[data-v-eb2c83ac]{background:var(--ui-divider);border-radius:1px;width:1px;height:28px;margin:0 auto}.tol-preset-width-custom[data-v-eb2c83ac]{border:2px solid var(--ui-input-border);background:var(--ui-input-bg);box-sizing:border-box;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;min-width:0;min-height:36px;max-height:36px;margin:0;padding:0 6px;display:flex}.tol-preset-width-input[data-v-eb2c83ac]{min-width:0;height:22px;color:var(--ui-text);box-sizing:border-box;text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:none;flex:1;padding:0 4px;font-size:12px}.tol-preset-width-input[data-v-eb2c83ac]:focus{outline:none}.tol-preset-width-custom[data-v-eb2c83ac]:focus-within{border-color:var(--ui-focus-border);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-preset-num-block[data-v-27676e56]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-label[data-v-27676e56]{color:var(--ui-text-muted);margin-top:4px;line-height:1.3}.tol-value-col[data-v-27676e56]{width:100%;min-width:0}.tol-preset-num-slider-wrap[data-v-27676e56]{grid-template-columns:1fr 44px;align-items:center;gap:8px;width:100%;min-height:36px;display:grid}.tol-preset-num-slider[data-v-27676e56]{width:100%;height:28px;accent-color:var(--ui-accent);cursor:pointer;margin:0}.tol-preset-num-slider-val[data-v-27676e56]{text-align:right;font-variant-numeric:tabular-nums;color:var(--ui-text);font-size:12px;font-weight:500}.tol-preset-num-row[data-v-27676e56]{grid-template-columns:repeat(4,minmax(28px,36px)) 1px minmax(0,1fr);align-items:center;gap:6px;width:100%;display:grid}.tol-preset-num-chip[data-v-27676e56]{aspect-ratio:1;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;max-width:36px;height:auto;color:var(--ui-text);font-variant-numeric:tabular-nums;cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;justify-self:center;align-items:center;padding:0 2px;font-size:10px;line-height:1.1;display:flex}.tol-preset-num-chip[data-v-27676e56]:hover{border-color:var(--ui-focus-border)}.tol-preset-num-chip--on[data-v-27676e56]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-preset-divider[data-v-27676e56]{background:var(--ui-divider);border-radius:1px;width:1px;height:28px;margin:0 auto}.tol-preset-num-custom[data-v-27676e56]{border:2px solid var(--ui-input-border);background:var(--ui-input-bg);box-sizing:border-box;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;min-width:0;min-height:36px;max-height:36px;margin:0;padding:0 6px;display:flex}.tol-preset-num-input[data-v-27676e56]{width:auto;min-width:0;max-width:none;height:22px;color:var(--ui-text);box-sizing:border-box;text-align:center;font-variant-numeric:tabular-nums;background:0 0;border:none;flex:1;padding:0 4px;font-size:12px}.tol-preset-num-input[data-v-27676e56]:focus{outline:none}.tol-preset-num-custom[data-v-27676e56]:focus-within{border-color:var(--ui-focus-border);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-stroke-dash-block[data-v-dde17b47]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-label[data-v-dde17b47]{color:var(--ui-text-muted);margin-top:4px;line-height:1.3}.tol-stroke-dash-row[data-v-dde17b47]{grid-template-columns:1fr 44px;align-items:center;gap:8px;width:100%;min-height:36px;display:grid}.tol-stroke-dash-slider[data-v-dde17b47]{width:100%;min-width:0;height:6px;accent-color:var(--ui-accent);cursor:pointer}.tol-stroke-dash-val[data-v-dde17b47]{text-align:right;font-variant-numeric:tabular-nums;color:var(--ui-text-muted);font-size:12px;line-height:1.2}.tol-obj-panel[data-v-977ce2a8]{color:var(--ui-text);flex-direction:column;gap:8px;font-size:12px;display:flex}.tol-obj-row[data-v-977ce2a8]{align-items:end;gap:8px;width:100%;display:grid}.tol-obj-row--two[data-v-977ce2a8]{grid-template-columns:1fr 1fr}.tol-obj-num[data-v-977ce2a8]{color:var(--ui-text);flex-direction:column;gap:4px;font-size:12px;display:flex}.tol-obj-num-label[data-v-977ce2a8]{color:var(--ui-text-muted);font-size:12px;line-height:1.2}.tol-obj-num input[type=number][data-v-977ce2a8]{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;min-height:32px;color:var(--ui-text);box-sizing:border-box;font-variant-numeric:tabular-nums;border-radius:8px;padding:0 8px;font-size:12px}.tol-obj-num input[type=number][data-v-977ce2a8]:focus{border-color:var(--ui-focus-border);box-shadow:0 0 0 2px var(--ui-focus-ring);outline:none}.tol-obj-num--mirror[data-v-977ce2a8]{align-self:stretch}.tol-obj-mirror-row[data-v-977ce2a8]{grid-template-columns:1fr 1fr;gap:6px;width:100%;min-height:32px;display:grid}.tol-obj-mirror-btn[data-v-977ce2a8]{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;height:32px;color:var(--ui-text);cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.tol-obj-mirror-btn svg[data-v-977ce2a8]{width:18px;height:18px}.tol-obj-mirror-btn[data-v-977ce2a8]:hover{border-color:var(--ui-focus-border)}.tol-obj-mirror-btn--on[data-v-977ce2a8]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-obj-textarea[data-v-977ce2a8]{resize:vertical;min-height:56px;padding-top:8px;padding-bottom:8px;font-family:inherit;line-height:1.4}.tol-field[data-v-977ce2a8]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-field-label[data-v-977ce2a8]{color:var(--ui-text-muted);line-height:1.3}.tol-field-label--inline[data-v-977ce2a8]{flex:1}.tol-field--check[data-v-977ce2a8]{flex-direction:row;align-items:center;gap:8px}.tol-field--check input[type=checkbox][data-v-977ce2a8]{width:16px;height:16px;accent-color:var(--ui-accent);border-radius:4px;flex-shrink:0}.tol-field-control[data-v-977ce2a8]{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;min-height:32px;color:var(--ui-text);box-sizing:border-box;border-radius:8px;padding:0 10px;font-size:12px}.tol-field-control--text[data-v-977ce2a8]{font-family:ui-monospace,monospace}.tol-field-control[data-v-977ce2a8]:focus{border-color:var(--ui-focus-border);box-shadow:0 0 0 2px var(--ui-focus-ring);outline:none}.tol-text-preset-row[data-v-977ce2a8]{align-items:center;gap:6px;width:100%;display:grid}.tol-text-preset-row--2[data-v-977ce2a8]{grid-template-columns:repeat(2,minmax(28px,36px))}.tol-text-preset-row--3[data-v-977ce2a8]{grid-template-columns:repeat(3,minmax(28px,36px))}.tol-text-preset-row--4[data-v-977ce2a8]{grid-template-columns:repeat(4,minmax(28px,36px))}.tol-text-preset-chip[data-v-977ce2a8]{aspect-ratio:1;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;max-width:36px;height:auto;color:var(--ui-text);font-variant-numeric:tabular-nums;cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;justify-self:center;align-items:center;margin:0;padding:0;font-size:10px;line-height:1.1;display:flex}.tol-text-preset-chip[data-v-977ce2a8]:hover{border-color:var(--ui-focus-border)}.tol-text-preset-chip--on[data-v-977ce2a8]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-text-preset-chip--style .tol-text-style-icon[data-v-977ce2a8]{width:20px;height:20px;display:block;overflow:visible}.tol-preset-num-block[data-v-977ce2a8]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-label[data-v-977ce2a8]{color:var(--ui-text-muted);margin-top:4px;line-height:1.3}.tol-value-col[data-v-977ce2a8]{width:100%;min-width:0}.tool-options-hint[data-v-977ce2a8]{color:var(--ui-text-hint);background:0 0;border-radius:0;margin:0;padding:0;font-size:12px;line-height:1.45}.tool-options-anchor[data-v-86182581]{z-index:240;padding-left:calc(12px + env(safe-area-inset-left,0px));padding-right:calc(12px + env(safe-area-inset-right,0px));padding-top:max(16px, env(safe-area-inset-top,0px));padding-bottom:max(16px, env(safe-area-inset-bottom,0px));box-sizing:border-box;pointer-events:none;position:fixed;top:50%;left:0;transform:translateY(-50%)}.tool-options-drawer[data-v-86182581]{--tool-options-tab-w:44px;max-height:var(--tool-options-tab-w);border-radius:var(--ui-floating-radius);isolation:isolate;background:var(--ui-glass-bg);-webkit-backdrop-filter:var(--ui-backdrop);backdrop-filter:var(--ui-backdrop);box-shadow:var(--ui-floating-chrome);pointer-events:auto;flex-direction:row;align-items:center;transition:max-height .32s cubic-bezier(.22,1,.36,1);display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.tool-options-drawer-open[data-v-86182581]{max-height:min(560px,85dvh)}.tool-options-edge-tab[data-v-86182581]{z-index:1;width:var(--tool-options-tab-w);height:var(--tool-options-tab-w);aspect-ratio:1;cursor:pointer;color:var(--ui-text-strong);background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:relative}.tool-options-edge-tab[data-v-86182581]:hover{background:var(--ui-tab-hover)}.tool-options-edge-tab-icon[data-v-86182581]{flex-shrink:0;width:22px;height:22px}.tool-options-dialog[data-v-86182581]{--dialog-w:min(280px, calc(100vw - var(--tool-options-tab-w) - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));z-index:1;box-sizing:border-box;width:var(--dialog-w);min-width:0;max-width:0;box-shadow:none;opacity:0;visibility:hidden;pointer-events:none;background:0 0;border-radius:0;outline:none;flex-direction:column;flex:none;align-self:stretch;transition:max-width .32s cubic-bezier(.22,1,.36,1),opacity .22s,visibility 0s linear .32s;display:flex;position:relative;overflow:hidden}.tool-options-drawer-open .tool-options-dialog[data-v-86182581]{--dialog-w:min(280px, calc(100vw - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));width:var(--dialog-w);max-width:var(--dialog-w);border-radius:var(--ui-floating-radius);opacity:1;visibility:visible;pointer-events:auto;-webkit-backdrop-filter:none;backdrop-filter:none;min-height:0;max-height:min(560px,85dvh);box-shadow:none;color:#fff;background:0 0;transition:max-width .32s cubic-bezier(.22,1,.36,1),opacity .24s 60ms,visibility}.tool-options-drawer-open .tool-options-dialog-title[data-v-86182581],.tool-options-drawer-open .tool-options-dialog-header .tool-options-btn-minimize[data-v-86182581],.tool-options-drawer-open .tool-options-dialog-header .tool-options-btn-minimize[data-v-86182581]:hover,.tool-options-drawer-open .tool-options-hint[data-v-86182581],.tool-options-drawer-open .tool-options-note[data-v-86182581],.tool-options-drawer-open .tool-options-dialog .tol-field[data-v-86182581],.tool-options-drawer-open .tool-options-dialog .tol-field-label[data-v-86182581],.tool-options-drawer-open .tool-options-dialog .tol-field-control[data-v-86182581]{color:#fff}.tool-options-drawer-open .tool-options-dialog .tol-field-control[data-v-86182581]::placeholder{color:#ffffff8c}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-color-row,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-color-row .tol-label{color:#fff}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-color-block .tol-label,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-block .tol-label,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-block .tol-label{color:#fff;font-size:12px}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-divider{background:#ffffff47}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-color-chip,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-text-preset-chip,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-chip,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-chip{color:#fff;background:#ffffff14;border-color:#ffffff59}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-color-custom,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-custom,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-custom{background:#ffffff14;border-color:#ffffff59}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-color-chip--on,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-text-preset-chip--on,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-chip--on,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-chip--on{color:#fff!important;background:#ffffff38!important;border-color:#fffffff2!important;box-shadow:0 0 0 1px #ffffffe6,0 0 0 4px #ffffff52!important}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-color-custom--on,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-custom:focus-within,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-custom:focus-within{background:#ffffff38!important;border-color:#fffffff2!important;box-shadow:0 0 0 1px #ffffffe6,0 0 0 4px #ffffff52!important}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-width-input,.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-input{color:#fff;background:#ffffff1f;border-color:#ffffff59}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-slider{accent-color:#fffffff2}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-preset-num-slider-val{color:#fff}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-stroke-dash-slider{accent-color:#fffffff2}.tool-options-drawer-open .tool-options-dialog[data-v-86182581] .tol-stroke-dash-val{color:#fff}.tool-options-dialog-header[data-v-86182581]{border-bottom:1px solid var(--ui-divider);background:0 0;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;display:flex}.tool-options-dialog-title[data-v-86182581]{min-width:0;color:var(--ui-text-strong);flex:1;margin:0;font-size:14px;font-weight:600}.tool-options-btn-minimize[data-v-86182581]{width:32px;height:32px;color:var(--ui-text-muted);cursor:pointer;background:0 0;border:none;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.tool-options-btn-minimize[data-v-86182581]:hover{background:var(--ui-btn-ghost-hover);color:var(--ui-btn-minimize-hover-fg)}.tool-options-btn-minimize-icon[data-v-86182581]{width:20px;height:20px}.tool-options-inner[data-v-86182581]{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;background:0 0;flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px 12px 14px;font-size:12px;display:flex;overflow-y:auto}.tool-options-inner[data-v-86182581]::-webkit-scrollbar{width:0;height:0;display:none}.tool-options-hint[data-v-86182581],.tool-options-note[data-v-86182581]{color:var(--ui-text-hint);background:0 0;border-radius:0;margin:0;padding:0;font-size:12px;line-height:1.45}.tol-field:not(.tol-field--check)>.tol-field-label[data-v-86182581]{margin-top:4px}.tol-field[data-v-86182581]{width:100%;color:var(--ui-text);flex-direction:column;gap:6px;font-size:12px;display:flex}.tol-field--check[data-v-86182581]{flex-direction:row;align-items:center;gap:8px}.tol-field-label[data-v-86182581]{color:var(--ui-text-muted);line-height:1.3}.tol-field-label--inline[data-v-86182581]{flex:1}.tol-field-control[data-v-86182581]{border:1px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;min-height:32px;color:var(--ui-text);box-sizing:border-box;border-radius:8px;padding:0 10px;font-size:12px}.tol-field-control--text[data-v-86182581]{font-family:ui-monospace,monospace}.tol-field-control[data-v-86182581]:focus{border-color:var(--ui-focus-border);box-shadow:0 0 0 2px var(--ui-focus-ring);outline:none}select.tol-field-control[data-v-86182581]{cursor:pointer}.tol-text-preset-row[data-v-86182581]{align-items:center;gap:6px;width:100%;display:grid}.tol-text-preset-row--2[data-v-86182581]{grid-template-columns:repeat(2,minmax(28px,36px))}.tol-text-preset-row--3[data-v-86182581]{grid-template-columns:repeat(3,minmax(28px,36px))}.tol-text-preset-row--4[data-v-86182581]{grid-template-columns:repeat(4,minmax(28px,36px))}.tol-text-preset-chip[data-v-86182581]{aspect-ratio:1;border:2px solid var(--ui-input-border);background:var(--ui-input-bg);width:100%;max-width:36px;height:auto;color:var(--ui-text);font-variant-numeric:tabular-nums;cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;justify-self:center;align-items:center;margin:0;padding:0;font-size:10px;line-height:1.1;display:flex}.tol-text-preset-chip[data-v-86182581]:hover{border-color:var(--ui-focus-border)}.tol-text-preset-chip--on[data-v-86182581]{border-color:var(--ui-focus-border);background:var(--ui-btn-solid-hover);box-shadow:0 0 0 1px var(--ui-focus-border), 0 0 0 3px var(--ui-focus-ring)}.tol-text-preset-chip--style .tol-text-style-icon[data-v-86182581]{width:20px;height:20px;display:block;overflow:visible}.tol-field--check input[type=checkbox][data-v-86182581]{width:16px;height:16px;accent-color:var(--ui-accent);border-radius:4px;flex-shrink:0}@media (width<=639px){.tool-options-drawer-open[data-v-86182581]{max-height:min(72dvh,520px)}.tool-options-dialog[data-v-86182581]{--dialog-w:min(320px, calc(100vw - var(--tool-options-tab-w) - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));width:var(--dialog-w)}.tool-options-drawer-open .tool-options-dialog[data-v-86182581]{--dialog-w:min(320px, calc(100vw - 24px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));width:var(--dialog-w);max-width:var(--dialog-w);max-height:min(72dvh,520px)}}.board-host[data-v-7eb4075d]{width:100%;height:100%;min-height:0;position:relative}@media (width<=639px){.board-host[data-v-7eb4075d]:not(.board-host--no-primary-toolbar){box-sizing:border-box;padding-right:52px}}
