.preview3d-inline[data-v-227c9f7e]{display:flex;flex-direction:column;border-top:1px solid var(--border);margin-top:auto;flex-shrink:0}.p3d-label[data-v-227c9f7e]{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:700;letter-spacing:1px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;padding:5px 8px 3px}.p3d-canvas[data-v-227c9f7e]{height:150px;width:100%}.toolbar[data-v-f249bb09]{width:168px;min-width:168px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:1px;padding:6px 6px 0;overflow-y:auto}.logo[data-v-f249bb09]{display:flex;align-items:center;gap:6px;padding:2px 4px 6px;width:100%}.logo-icon[data-v-f249bb09]{font-size:16px;color:var(--accent);flex-shrink:0}.logo-text[data-v-f249bb09]{font-family:var(--font-ui);font-weight:800;font-size:15px;letter-spacing:-.5px;color:var(--text)}.sep[data-v-f249bb09]{height:1px;background:var(--border);margin:3px 0}.group-label[data-v-f249bb09]{font-size:8px;font-weight:700;letter-spacing:1.5px;color:var(--muted);padding:1px 4px;text-transform:uppercase;font-family:var(--font-mono)}.tool-btn[data-v-f249bb09]{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:5px;background:transparent;color:var(--muted);font-size:11px;font-family:var(--font-ui);font-weight:600;transition:background .12s,color .12s;width:100%;text-align:left;border:none;cursor:pointer}.tool-btn[data-v-f249bb09]:hover{background:var(--surface2);color:var(--text)}.tool-btn.active[data-v-f249bb09]{background:var(--surface2);color:var(--accent)}.tool-btn.danger[data-v-f249bb09]:hover{color:var(--danger)}.zoom-row[data-v-f249bb09]{display:flex;align-items:center;gap:3px;padding:1px 4px}.zoom-btn[data-v-f249bb09]{width:24px;height:24px;border-radius:4px;background:var(--surface2);color:var(--text);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);cursor:pointer;transition:background .12s}.zoom-btn[data-v-f249bb09]:hover{background:var(--border)}.zoom-pct[data-v-f249bb09]{flex:1;height:24px;border-radius:4px;background:var(--surface2);color:var(--accent);font-size:10px;font-family:var(--font-mono);font-weight:600;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);cursor:pointer;transition:background .12s}.zoom-pct[data-v-f249bb09]:hover{background:var(--border)}.toggle-row[data-v-f249bb09]{display:flex;align-items:center;justify-content:space-between;padding:3px 6px;font-size:11px;color:var(--muted);cursor:pointer}.toggle-row input[type=checkbox][data-v-f249bb09]{accent-color:var(--accent)}.range-row[data-v-f249bb09]{display:flex;flex-direction:column;gap:2px;padding:2px 6px;font-size:10px;color:var(--muted)}.range-row input[data-v-f249bb09]{width:100%}.export-btn[data-v-f249bb09]{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:5px;background:transparent;color:var(--muted);font-size:11px;font-family:var(--font-ui);font-weight:600;width:100%;border:none;cursor:pointer;transition:background .12s,color .12s}.export-btn[data-v-f249bb09]:hover{background:var(--surface2);color:var(--text)}.badge[data-v-f249bb09]{display:inline-block;padding:1px 4px;border-radius:3px;font-size:8px;font-weight:700;font-family:var(--font-mono)}.badge.svg[data-v-f249bb09]{background:#1a3a1a;color:#4cff80}.badge.plt[data-v-f249bb09]{background:#2a1a3a;color:#c87cff}.badge.eps[data-v-f249bb09]{background:#1a2a1a;color:#80d080}.badge.png[data-v-f249bb09]{background:#1a1a2a;color:#80a8ff}.eps-btn[data-v-f249bb09]{border-color:#50c85033!important}.eps-btn[data-v-f249bb09]:hover{border-color:#50c85080!important;color:#80d080!important}.png-btn[data-v-f249bb09]{border-color:#5082ff33!important}.png-btn[data-v-f249bb09]:hover{border-color:#5082ff80!important;color:#80a8ff!important}.badge.dxf[data-v-f249bb09]{background:#1a2a3a;color:var(--accent2)}.badge.pdf[data-v-f249bb09]{background:#c30;color:#fff}.badge.cad[data-v-f249bb09]{background:#2a1a3a;color:#c880ff}.pdf-btn[data-v-f249bb09]{border-color:#cc33004d!important}.pdf-btn[data-v-f249bb09]:hover{border-color:#c30!important;color:#f64!important}.pdf-overlay[data-v-f249bb09]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#000000a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.pdf-dialog[data-v-f249bb09]{background:#17171e;border:1px solid #333;border-radius:14px;padding:20px;width:380px;box-shadow:0 24px 60px #000000b3;display:flex;flex-direction:column;gap:14px}.pdf-dialog-header[data-v-f249bb09]{display:flex;align-items:center;gap:10px}.pdf-dialog-icon[data-v-f249bb09]{font-size:20px}.pdf-dialog-title[data-v-f249bb09]{flex:1;font-size:14px;font-weight:700;color:#eee;font-family:DM Sans,sans-serif}.pdf-dialog-close[data-v-f249bb09]{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:2px 6px;border-radius:4px}.pdf-dialog-close[data-v-f249bb09]:hover{color:#eee;background:#222}.pdf-field-group[data-v-f249bb09]{display:flex;flex-direction:column;gap:4px}.pdf-field-row[data-v-f249bb09]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pdf-label[data-v-f249bb09]{font-size:10px;font-weight:600;color:#666;font-family:DM Mono,monospace;text-transform:uppercase;letter-spacing:.5px}.pdf-input[data-v-f249bb09]{background:#1f1f28;border:1px solid #333;border-radius:7px;padding:7px 10px;color:#eee;font-size:12px;outline:none;transition:border-color .15s}.pdf-input[data-v-f249bb09]:focus{border-color:#c30}.pdf-options[data-v-f249bb09]{display:flex;gap:14px}.pdf-check[data-v-f249bb09]{display:flex;align-items:center;gap:6px;font-size:11px;color:#888;cursor:pointer}.pdf-check input[data-v-f249bb09]{accent-color:#cc3300;cursor:pointer}.pdf-preview-info[data-v-f249bb09]{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#1f1f28;border:1px solid #333;border-radius:8px}.pi-badge[data-v-f249bb09]{background:#c30;color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;font-family:DM Mono,monospace;white-space:nowrap}.pi-text[data-v-f249bb09]{font-size:11px;color:#666;font-family:DM Mono,monospace}.pdf-actions[data-v-f249bb09]{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.pdf-cancel[data-v-f249bb09]{padding:8px 16px;border-radius:8px;border:1px solid #333;background:transparent;color:#888;font-size:12px;cursor:pointer}.pdf-cancel[data-v-f249bb09]:hover{color:#eee;background:#1f1f28}.pdf-confirm[data-v-f249bb09]{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;border:none;background:#c30;color:#fff;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s}.pdf-confirm[data-v-f249bb09]:hover:not(:disabled){background:#e03a00}.pdf-confirm[data-v-f249bb09]:disabled{opacity:.4;cursor:default}.snap-bar[data-v-ce945dca]{display:flex;align-items:center;gap:2px;padding:3px 6px;background:#10101aeb;border:1px solid rgba(255,255,255,.08);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-user-select:none;user-select:none;pointer-events:all}.snap-master[data-v-ce945dca]{display:flex;align-items:center;gap:5px;padding:4px 8px;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#555;font-size:10px;font-weight:700;font-family:var(--font-ui, sans-serif);cursor:pointer;transition:all .12s;letter-spacing:.5px;text-transform:uppercase}.snap-master.active[data-v-ce945dca]{color:#e8ff47;border-color:#e8ff474d;background:#e8ff4714}.snap-master[data-v-ce945dca]:hover{opacity:.8}.snap-key[data-v-ce945dca]{font-size:8px;padding:1px 4px;border-radius:3px;background:#ffffff12;color:#555;font-family:var(--font-mono, monospace);letter-spacing:0}.snap-master.active .snap-key[data-v-ce945dca]{color:#e8ff4799}.sep[data-v-ce945dca]{width:1px;height:18px;background:#ffffff14;margin:0 3px;flex-shrink:0}.snap-btn[data-v-ce945dca]{display:flex;align-items:center;gap:4px;padding:4px 7px;border-radius:5px;border:1px solid transparent;background:transparent;color:#444;font-size:10px;font-weight:600;font-family:var(--font-ui, sans-serif);cursor:pointer;transition:all .1s;white-space:nowrap}.snap-btn[data-v-ce945dca]:hover{color:#888;background:#ffffff0a}.snap-btn.active[data-v-ce945dca]{color:#aaa;background:#ffffff0f;border-color:#ffffff1f}.snap-btn:nth-child(3).active[data-v-ce945dca]{color:#e8ff47;border-color:#e8ff4740}.snap-btn:nth-child(5).active[data-v-ce945dca]{color:#e8ff47;border-color:#e8ff4740}.snap-btn:nth-child(6).active[data-v-ce945dca]{color:#47c8ff;border-color:#47c8ff40}.snap-btn:nth-child(7).active[data-v-ce945dca]{color:#ff8c47;border-color:#ff8c4740}.snap-btn:nth-child(8).active[data-v-ce945dca]{color:#47c8ff;border-color:#47c8ff40}.snap-step[data-v-ce945dca]{padding:3px 8px;border-radius:5px;border:1px solid rgba(232,255,71,.2);background:#e8ff470f;color:#e8ff47;font-size:11px;font-weight:800;font-family:var(--font-mono, monospace);cursor:pointer;transition:all .1s;min-width:36px;text-align:center}.snap-step span[data-v-ce945dca]{font-size:8px;font-weight:400;margin-left:1px}.snap-step[data-v-ce945dca]:hover{background:#e8ff471f}.disabled[data-v-ce945dca]{opacity:.6}.snap-lang-sep[data-v-ce945dca]{margin-left:4px}.snap-ang-btn[data-v-ce945dca]{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:5px;border:1px solid rgba(232,255,71,.25);background:#e8ff470d;cursor:pointer;transition:all .15s;font-family:var(--font-mono, monospace)}.snap-ang-btn[data-v-ce945dca]:hover{background:#e8ff4726;border-color:#e8ff4780}.snap-ang-code[data-v-ce945dca]{font-size:10px;font-weight:700;color:#e8ff47;letter-spacing:.5px}.snap-lang-btn[data-v-ce945dca]{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:5px;border:1px solid #cc2200;background:#cc22000f;cursor:pointer;transition:all .15s;font-family:var(--font-mono, monospace)}.snap-lang-btn[data-v-ce945dca]:hover{background:#cc220026}.snap-lang-emoji[data-v-ce945dca]{font-size:12px;line-height:1}.snap-lang-code[data-v-ce945dca]{font-size:10px;font-weight:700;color:#f30;letter-spacing:.5px}.canvas-wrap[data-v-019dec87]{width:100%;height:100%;position:relative;overflow:hidden}.cad-canvas[data-v-019dec87]{width:100%;height:100%;display:block;background:#0f0f11;-webkit-user-select:none;user-select:none}.marching[data-v-019dec87]{animation:march-019dec87 .5s linear infinite}@keyframes march-019dec87{to{stroke-dashoffset:-20}}.dim-label[data-v-019dec87]{cursor:text;transition:fill .1s}.dim-label[data-v-019dec87]:hover{fill:#ccc!important}.dim-overlay[data-v-019dec87]{position:absolute;display:flex;align-items:center;gap:2px;background:#0f0f11;border:1.5px solid #e8ff47;border-radius:5px;padding:2px 5px 2px 4px;box-shadow:0 2px 12px #000000b3;z-index:100}.dim-input[data-v-019dec87]{width:100%;background:transparent;border:none;color:#e8ff47;font-family:DM Mono,monospace;font-size:13px;font-weight:700;text-align:right;outline:none}.dim-input[data-v-019dec87]::-webkit-inner-spin-button,.dim-input[data-v-019dec87]::-webkit-outer-spin-button{display:none}.dim-unit[data-v-019dec87]{font-size:10px;color:#666;font-family:DM Mono,monospace;flex-shrink:0}.shortcut-hud[data-v-019dec87]{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;background:#0f0f11d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #2a2a34;border-radius:10px;padding:6px 12px;pointer-events:none;z-index:10}.hud-item[data-v-019dec87]{display:flex;align-items:center;gap:4px;font-size:10px;color:#555;font-family:DM Mono,monospace}kbd[data-v-019dec87]{background:#1e1e26;border:1px solid #333;border-radius:3px;padding:1px 5px;font-size:10px;color:#e8ff47;font-family:DM Mono,monospace}.text-dialog-overlay[data-v-019dec87]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9100;background:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center}.text-dialog[data-v-019dec87]{background:#17171e;border:1px solid #333;border-radius:12px;padding:20px;width:360px;display:flex;flex-direction:column;gap:14px;box-shadow:0 24px 60px #000000b3}.text-dialog-title[data-v-019dec87]{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:#eee;font-family:DM Sans,sans-serif}.text-dialog-input[data-v-019dec87]{background:#1f1f28;border:1px solid #444;border-radius:8px;padding:10px 12px;color:#fff;font-size:14px;outline:none;transition:border-color .15s}.text-dialog-input[data-v-019dec87]:focus{border-color:var(--accent2)}.text-dialog-opts[data-v-019dec87]{display:flex;gap:12px}.text-opt-group[data-v-019dec87]{display:flex;flex-direction:column;gap:4px;flex:1}.text-opt-group label[data-v-019dec87]{font-size:9px;font-weight:700;color:#666;font-family:DM Mono,monospace;text-transform:uppercase;letter-spacing:.5px}.text-select[data-v-019dec87]{background:#1f1f28;border:1px solid #333;border-radius:6px;padding:5px 7px;color:#eee;font-size:11px;outline:none}.text-size-input[data-v-019dec87]{background:#1f1f28;border:1px solid #333;border-radius:6px;padding:5px 7px;color:#eee;font-size:11px;outline:none;width:100%;box-sizing:border-box}.text-dialog-actions[data-v-019dec87]{display:flex;gap:8px;justify-content:flex-end}.text-btn-cancel[data-v-019dec87]{padding:7px 16px;border-radius:7px;border:1px solid #333;background:transparent;color:#888;font-size:12px;cursor:pointer}.text-btn-cancel[data-v-019dec87]:hover{color:#eee;background:#1f1f28}.text-btn-ok[data-v-019dec87]{padding:7px 20px;border-radius:7px;border:none;background:var(--accent2);color:#000;font-size:12px;font-weight:700;cursor:pointer;transition:opacity .12s}.text-btn-ok[data-v-019dec87]:hover{opacity:.85}.fitview-btn-wrap[data-v-019dec87]{position:absolute;bottom:42px;right:16px;z-index:200;pointer-events:none}.fitview-btn[data-v-019dec87]{pointer-events:all;display:flex;align-items:center;gap:5px;padding:5px 10px;border-radius:7px;border:1px solid rgba(255,255,255,.15);background:#10101ae0;color:#aaa;font-size:10px;font-weight:700;font-family:var(--font-ui, sans-serif);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .12s}.fitview-btn[data-v-019dec87]:hover:not(:disabled){color:#e8ff47;border-color:#e8ff4766}.fitview-btn[data-v-019dec87]:disabled{opacity:.35;cursor:default}.snap-bar-wrap[data-v-019dec87]{position:absolute;bottom:42px;left:50%;transform:translate(-50%);z-index:200;pointer-events:none}.snap-bar-wrap[data-v-019dec87]>*{pointer-events:all}.copyright-badge[data-v-019dec87]{position:absolute;bottom:10px;right:12px;display:flex;align-items:center;gap:5px;background:#0a0a0fbf;border:1px solid #222;border-radius:6px;padding:4px 10px;pointer-events:auto;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cpyr-name[data-v-019dec87]{font-size:10px;font-weight:700;color:#555;font-family:DM Sans,sans-serif}.cpyr-sep[data-v-019dec87]{color:#333;font-size:10px}.cpyr-version[data-v-019dec87]{font-size:10px;font-weight:800;color:#e8ff47;font-family:DM Mono,monospace;letter-spacing:.5px}.cpyr-tag[data-v-019dec87]{font-size:9px;font-weight:700;color:#f94;background:#ff994426;border:1px solid rgba(255,153,68,.3);border-radius:3px;padding:1px 5px;font-family:DM Mono,monospace}.cpyr-brand[data-v-019dec87]{font-size:10px;font-weight:800;color:#e8ff47;font-family:DM Mono,monospace}.cpyr-link[data-v-019dec87]{font-size:10px;color:#47c8ff;font-family:DM Mono,monospace;text-decoration:none}.cpyr-link[data-v-019dec87]:hover{text-decoration:underline}.ssb[data-v-b24fdfbe]{background:var(--surface2);border:1px solid var(--border);border-radius:10px;overflow:hidden;font-family:var(--font-ui)}.ssb-header[data-v-b24fdfbe]{display:flex;align-items:center;gap:6px;padding:7px 10px 6px;background:#e8ff470f;border-bottom:1px solid var(--border)}.ssb-icon[data-v-b24fdfbe]{color:var(--accent);flex-shrink:0}.ssb-title[data-v-b24fdfbe]{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--accent);font-family:var(--font-mono)}.ssb-main-dims[data-v-b24fdfbe]{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--border)}.ssb-dim-box[data-v-b24fdfbe]{display:flex;flex-direction:column;align-items:center;gap:1px;padding:10px 6px}.ssb-dim-box+.ssb-dim-box[data-v-b24fdfbe]{border-left:1px solid var(--border)}.ssb-dim-lbl[data-v-b24fdfbe]{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-mono)}.ssb-dim-val[data-v-b24fdfbe]{font-size:20px;font-weight:800;font-family:var(--font-mono);color:var(--accent);line-height:1.1}.ssb-unit[data-v-b24fdfbe]{font-size:10px;font-weight:400;color:var(--muted);margin-left:1px}.ssb-breakdown[data-v-b24fdfbe]{padding:6px 8px 4px;border-bottom:1px solid var(--border)}.ssb-breakdown.compact[data-v-b24fdfbe]{padding:4px 8px 2px;border-bottom:none}.ssb-row[data-v-b24fdfbe]{display:grid;grid-template-columns:80px 1fr 90px 72px;align-items:center;gap:4px;padding:3px 0;font-size:10px}.ssb-row.header-row[data-v-b24fdfbe]{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;font-family:var(--font-mono);border-bottom:1px solid #2a2a35;padding-bottom:4px;margin-bottom:2px}.ssb-row-lbl[data-v-b24fdfbe]{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--muted);font-family:var(--font-ui)}.mono[data-v-b24fdfbe]{font-family:var(--font-mono);font-size:10px;color:var(--muted)}.fold-add[data-v-b24fdfbe]{color:#47c8ff}.fold-badge[data-v-b24fdfbe]{display:inline-block;background:#47c8ff26;border:1px solid rgba(71,200,255,.25);border-radius:3px;padding:0 3px;font-size:8px;font-family:var(--font-mono);color:#47c8ff;margin-right:2px}.accent-col[data-v-b24fdfbe]{color:var(--accent)!important}.result-val[data-v-b24fdfbe]{font-weight:700;font-size:11px!important}.ssb-legend[data-v-b24fdfbe]{display:flex;align-items:flex-start;gap:5px;padding:5px 9px 7px;font-size:9px;color:#555;font-family:var(--font-ui);line-height:1.5}.ssb-legend strong[data-v-b24fdfbe]{color:#47c8ff;font-weight:700}.ssb-legend svg[data-v-b24fdfbe]{flex-shrink:0;margin-top:1px}.ssb-piece[data-v-b24fdfbe]{border-bottom:1px solid var(--border);padding:6px 8px 4px}.ssb-piece[data-v-b24fdfbe]:last-child{border-bottom:none}.ssb-piece-header[data-v-b24fdfbe]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.piece-dot[data-v-b24fdfbe]{width:6px;height:6px;border-radius:50%;background:var(--accent2);flex-shrink:0}.piece-label[data-v-b24fdfbe]{font-size:10px;font-weight:700;color:var(--text)}.piece-dims-inline[data-v-b24fdfbe]{margin-left:auto;font-size:11px;font-weight:800;font-family:var(--font-mono);color:var(--accent)}.gen-panel[data-v-85515533]{display:flex;flex-direction:column;gap:8px;padding:10px 8px;overflow-y:auto;height:100%}.flute-archive[data-v-85515533]{background:var(--surface2);border:1px solid rgba(232,255,71,.2);border-radius:8px;padding:9px;display:flex;flex-direction:column;gap:7px}.flute-archive-title[data-v-85515533]{display:flex;align-items:center;gap:6px;font-size:8px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#e8ff47;font-family:var(--font-mono)}.flute-quick-grid[data-v-85515533]{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.fq-btn[data-v-85515533]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 4px;border-radius:7px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;transition:all .18s}.fq-btn[data-v-85515533]:hover{border-color:var(--fc);transform:translateY(-1px)}.fq-btn.active[data-v-85515533]{border-color:var(--fc);background:#ffffff0d;box-shadow:0 0 10px #ffffff0f,inset 0 0 6px #ffffff08}.fq-wave[data-v-85515533]{font-family:var(--font-mono);font-size:13px;font-weight:700;line-height:1}.fq-s[data-v-85515533]{font-family:var(--font-mono);font-size:8px;color:var(--muted)}.fq-t[data-v-85515533]{font-family:var(--font-mono);font-size:9px;font-weight:600}.fq-active-info[data-v-85515533]{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:5px 8px;background:var(--surface);border-radius:5px;border:1px solid var(--border);font-family:var(--font-mono);font-size:10px}.fq-ai-label[data-v-85515533]{color:var(--muted)}.fq-ai-val[data-v-85515533]{font-weight:700}.fq-ai-sep[data-v-85515533]{color:var(--dim)}.fq-ai-t[data-v-85515533]{color:var(--text)}.fq-ai-t strong[data-v-85515533]{color:#e8ff47}.gen-panel[data-v-85515533]::-webkit-scrollbar{width:4px}.gen-panel[data-v-85515533]::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.section-label[data-v-85515533]{font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;padding-top:4px}.type-select[data-v-85515533]{width:100%;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:6px 8px;font-family:var(--font-ui);font-size:12px;cursor:pointer}.params-grid[data-v-85515533]{display:flex;flex-direction:column;gap:6px}.param-field[data-v-85515533]{display:flex;flex-direction:column;gap:2px}.param-lbl[data-v-85515533]{font-size:9px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.4px}.param-unit[data-v-85515533]{color:#555;font-size:8px}.param-input[data-v-85515533]{background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:5px;padding:5px 7px;font-family:var(--font-mono);font-size:12px;font-weight:600;outline:none;width:100%;box-sizing:border-box;transition:border-color .12s}.param-input[data-v-85515533]:focus{border-color:var(--accent2)}.param-input[data-v-85515533]::-webkit-inner-spin-button{display:none}.tol-block[data-v-85515533]{background:#47c8ff0d;border:1px solid rgba(71,200,255,.2);border-radius:8px;padding:8px 9px}.tol-header[data-v-85515533]{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;color:#47c8ff;font-family:var(--font-ui);margin-bottom:6px}.tol-val[data-v-85515533]{margin-left:auto;font-family:var(--font-mono);font-size:13px;font-weight:800}.tol-slider[data-v-85515533]{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;background:#47c8ff33;border-radius:2px;outline:none;cursor:pointer;margin-bottom:6px}.tol-slider[data-v-85515533]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#47c8ff;cursor:pointer}.tol-presets[data-v-85515533]{display:flex;gap:4px;margin-bottom:6px}.tol-preset[data-v-85515533]{flex:1;padding:3px 0;border-radius:4px;font-size:9px;font-family:var(--font-mono);font-weight:700;background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:all .1s}.tol-preset[data-v-85515533]:hover{color:#47c8ff;border-color:#47c8ff}.tol-preset.active[data-v-85515533]{background:#47c8ff26;color:#47c8ff;border-color:#47c8ff}.tol-hint[data-v-85515533]{font-size:8px;color:#445;font-family:var(--font-ui);line-height:1.4}.gen-btn[data-v-85515533]{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#000;border-radius:7px;padding:10px;font-family:var(--font-ui);font-weight:700;font-size:13px;transition:opacity .12s,transform .1s;margin-top:2px}.gen-btn[data-v-85515533]:hover{opacity:.9;transform:translateY(-1px)}.formula-row[data-v-85515533]{display:flex;align-items:center;gap:4px;padding:6px 4px 4px;flex-wrap:wrap}.formula-cell[data-v-85515533]{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:52px}.fc-lbl[data-v-85515533]{font-size:8px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px}.fc-val[data-v-85515533]{font-size:12px;font-weight:700;color:var(--text);font-family:var(--font-mono)}.fc-val.accent[data-v-85515533]{color:#e8ff47}.fc-input[data-v-85515533]{width:48px;background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:11px;font-weight:700;padding:3px 5px;font-family:var(--font-mono);text-align:center;outline:none}.fc-input[data-v-85515533]:focus{border-color:var(--accent)}.fc-range[data-v-85515533]{font-size:7px;color:var(--muted);font-family:var(--font-mono)}.formula-op[data-v-85515533]{font-size:13px;font-weight:700;color:var(--muted);padding:0 1px;margin-top:8px}.mat-block[data-v-85515533]{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.mat-header[data-v-85515533]{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;color:var(--text);font-family:var(--font-ui)}.mat-badge[data-v-85515533]{margin-left:auto;font-size:9px;font-weight:700;padding:2px 7px;border-radius:4px;font-family:var(--font-mono);white-space:nowrap;overflow:hidden;max-width:100px}.mat-select[data-v-85515533]{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:11px;padding:6px 8px;font-family:var(--font-ui);outline:none;cursor:pointer;width:100%}.mat-select[data-v-85515533]:focus{border-color:var(--accent)}.mat-info[data-v-85515533]{display:flex;flex-wrap:wrap;gap:4px}.mat-chip[data-v-85515533]{font-size:9px;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-family:var(--font-mono)}.tol-val.accent[data-v-85515533]{color:#e8ff47!important}.tol-formula-note[data-v-85515533]{font-size:9px;color:var(--muted);font-family:var(--font-mono);padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:4px}.library-panel[data-v-a68ff794]{padding:10px 8px;display:flex;flex-direction:column;gap:8px}.search-row[data-v-a68ff794]{display:flex;align-items:center;gap:7px;background:var(--surface2);border:1px solid var(--border);border-radius:7px;padding:6px 9px;transition:border-color .12s}.search-row[data-v-a68ff794]:focus-within{border-color:var(--accent2)}.search-icon[data-v-a68ff794]{color:var(--muted);flex-shrink:0}.search-input[data-v-a68ff794]{flex:1;background:transparent;border:none;color:var(--text);font-size:12px;font-family:var(--font-ui);outline:none}.search-input[data-v-a68ff794]::placeholder{color:var(--muted)}.cat-row[data-v-a68ff794]{display:flex;gap:4px;flex-wrap:wrap}.cat-btn[data-v-a68ff794]{padding:3px 8px;border-radius:5px;font-size:9px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:all .12s}.cat-btn[data-v-a68ff794]:hover{color:var(--text);border-color:#555}.cat-btn.active[data-v-a68ff794]{background:#1a1a22}.card-list[data-v-a68ff794]{display:flex;flex-direction:column;gap:6px}.box-card[data-v-a68ff794]{background:var(--surface2);border:1px solid var(--border);border-radius:9px;overflow:hidden;transition:border-color .12s}.box-card[data-v-a68ff794]:hover{border-color:#444}.card-header[data-v-a68ff794]{display:flex;align-items:center;gap:9px;padding:9px 10px;cursor:pointer;-webkit-user-select:none;user-select:none}.card-icon[data-v-a68ff794]{font-size:18px;flex-shrink:0}.card-info[data-v-a68ff794]{flex:1;min-width:0}.card-name[data-v-a68ff794]{font-size:12px;font-weight:700;color:var(--text);font-family:var(--font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-cat[data-v-a68ff794]{font-size:9px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px}.chevron[data-v-a68ff794]{color:var(--muted);flex-shrink:0;transition:transform .15s}.chevron.open[data-v-a68ff794]{transform:rotate(180deg)}.card-body[data-v-a68ff794]{padding:8px 10px 10px;display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border)}.card-desc[data-v-a68ff794]{font-size:11px;color:var(--muted);line-height:1.55;font-family:var(--font-ui);margin:0}.tag-row[data-v-a68ff794]{display:flex;flex-wrap:wrap;gap:4px}.tag[data-v-a68ff794]{font-size:9px;padding:2px 6px;border-radius:4px;background:#1a1a22;color:var(--muted);font-family:var(--font-mono);border:1px solid var(--border)}.param-grid[data-v-a68ff794]{display:grid;grid-template-columns:1fr 1fr;gap:5px}.param-field[data-v-a68ff794]{display:flex;flex-direction:column;gap:2px}.param-label[data-v-a68ff794]{font-size:9px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.4px}.param-input-wrap[data-v-a68ff794]{display:flex;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:4px;overflow:hidden;transition:border-color .12s}.param-input-wrap[data-v-a68ff794]:focus-within{border-color:var(--accent2)}.param-input[data-v-a68ff794]{flex:1;background:transparent;border:none;color:var(--text);font-size:11px;font-family:var(--font-mono);font-weight:600;padding:4px 5px;outline:none;width:0;min-width:0}.param-input[data-v-a68ff794]::-webkit-inner-spin-button{display:none}.param-sfx[data-v-a68ff794]{font-size:9px;color:var(--muted);padding:0 4px 0 0;font-family:var(--font-mono);flex-shrink:0}.card-actions[data-v-a68ff794]{display:flex;gap:5px}.load-btn[data-v-a68ff794]{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 6px;border-radius:6px;font-size:11px;font-family:var(--font-ui);font-weight:600;cursor:pointer;transition:background .12s,color .12s}.load-btn.primary[data-v-a68ff794]{background:var(--accent);color:#000;border:none}.load-btn.primary[data-v-a68ff794]:hover{background:#d4ef30}.load-btn.secondary[data-v-a68ff794]{background:var(--surface);color:var(--text);border:1px solid var(--border)}.load-btn.secondary[data-v-a68ff794]:hover{background:var(--border)}.no-results[data-v-a68ff794]{text-align:center;color:var(--muted);font-size:12px;padding:20px}.param-field-tol[data-v-a68ff794]{grid-column:1 / -1;background:#47c8ff0d;border:1px solid rgba(71,200,255,.2);border-radius:6px;padding:4px 7px;margin-top:2px}.param-field-tol .param-label[data-v-a68ff794]{color:#47c8ff}.card-flute-row[data-v-a68ff794]{display:flex;align-items:center;gap:6px;padding:5px 8px;margin-bottom:6px;background:#47c8ff0d;border:1px solid rgba(71,200,255,.15);border-radius:6px}.card-flute-select[data-v-a68ff794]{flex:1;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:3px 5px;font-family:var(--font-mono);font-size:10px;cursor:pointer;min-width:0}.card-flute-t[data-v-a68ff794]{font-family:var(--font-mono);font-size:10px;font-weight:700;color:#47c8ff;white-space:nowrap;flex-shrink:0}.layers-panel[data-v-504e845a]{padding:12px 10px;display:flex;flex-direction:column;gap:12px}.panel-title[data-v-504e845a]{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase}.layer-list[data-v-504e845a]{display:flex;flex-direction:column;gap:4px}.layer-row[data-v-504e845a]{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:var(--surface2);border:1px solid var(--border);cursor:pointer;transition:opacity .15s,border-color .15s}.layer-row[data-v-504e845a]:hover{border-color:var(--accent2)}.layer-row.hidden[data-v-504e845a]{opacity:.38}.eye-btn[data-v-504e845a]{color:var(--muted);flex-shrink:0}.layer-row:hover .eye-btn[data-v-504e845a]{color:var(--text)}.swatch[data-v-504e845a]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.line-icon[data-v-504e845a]{flex-shrink:0}.layer-info[data-v-504e845a]{display:flex;flex-direction:column;gap:1px;flex:1}.layer-name[data-v-504e845a]{font-size:12px;font-weight:600;color:var(--text);font-family:var(--font-ui)}.layer-count[data-v-504e845a]{font-size:10px;color:var(--muted);font-family:var(--font-mono)}.stats[data-v-504e845a]{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.stat-row[data-v-504e845a]{display:flex;justify-content:space-between;align-items:center}.stat-label[data-v-504e845a]{font-size:11px;color:var(--muted);font-family:var(--font-ui)}.stat-val[data-v-504e845a]{font-size:12px;color:var(--accent);font-family:var(--font-mono);font-weight:700}.hint[data-v-504e845a]{font-size:10px;color:var(--muted);line-height:1.6;display:flex;gap:6px;align-items:flex-start;padding:8px 10px;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.hint svg[data-v-504e845a]{flex-shrink:0;margin-top:1px}.props-panel[data-v-5752e009]{padding:12px 10px;display:flex;flex-direction:column;gap:10px;height:100%;overflow-y:auto}.empty-state[data-v-5752e009]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:12px;text-align:center;line-height:1.7;font-family:var(--font-ui)}.cut-banner[data-v-5752e009]{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:7px;background:#ff8c471a;border:1px solid #ff8c47;color:#ff8c47;font-size:10px;font-family:var(--font-ui);line-height:1.4}.prop-header[data-v-5752e009]{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.prop-header.is-group[data-v-5752e009]{border-color:var(--accent2)}.prop-icon[data-v-5752e009]{flex-shrink:0}.prop-title[data-v-5752e009]{font-size:13px;font-weight:700;color:var(--text);font-family:var(--font-ui)}.prop-sub[data-v-5752e009]{font-size:10px;color:var(--muted);font-family:var(--font-mono)}.sep[data-v-5752e009]{height:1px;background:var(--border)}.prop-section-label[data-v-5752e009],.section-label[data-v-5752e009]{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase}.prop-section[data-v-5752e009]{display:flex;flex-direction:column;gap:6px}.field-row[data-v-5752e009]{display:flex;align-items:center;justify-content:space-between;gap:8px}.field-label[data-v-5752e009]{font-size:11px;color:var(--muted);font-family:var(--font-ui);flex-shrink:0}.field-input-wrap[data-v-5752e009]{display:flex;align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:5px;overflow:hidden;flex:1;max-width:120px}.field-input-wrap[data-v-5752e009]:focus-within{border-color:#555}.field-input[data-v-5752e009]{flex:1;background:transparent;border:none;color:var(--text);font-family:var(--font-mono);font-size:12px;font-weight:600;padding:5px 6px;outline:none;width:0;min-width:0}.field-input[data-v-5752e009]::-webkit-inner-spin-button{display:none}.field-sfx[data-v-5752e009],.dim-sfx[data-v-5752e009]{font-size:9px;color:var(--muted);font-family:var(--font-mono);padding:0 5px 0 0;flex-shrink:0}.type-row[data-v-5752e009]{display:flex;gap:5px}.type-btn[data-v-5752e009]{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 4px;border-radius:7px;background:var(--surface2);border:1.5px solid var(--border);color:var(--muted);font-size:10px;font-family:var(--font-ui);font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}.type-btn[data-v-5752e009]:hover{border-color:#555;color:var(--text)}.type-btn.active[data-v-5752e009]{background:#1a1a22}.dim-grid[data-v-5752e009],.coord-grid[data-v-5752e009]{display:grid;grid-template-columns:1fr 1fr;gap:6px}.dim-field[data-v-5752e009]{display:flex;flex-direction:column;gap:3px}.dim-lbl[data-v-5752e009]{font-size:9px;font-family:var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.dim-input-wrap[data-v-5752e009]{display:flex;align-items:center;background:var(--surface2);border:1px solid var(--border);border-radius:5px;overflow:hidden;transition:border-color .12s}.dim-input-wrap[data-v-5752e009]:focus-within{border-color:#555}.dim-input-wrap.accent[data-v-5752e009]:focus-within{border-color:var(--accent)}.prop-input[data-v-5752e009]{flex:1;background:transparent;border:none;color:var(--text);font-family:var(--font-mono);font-size:12px;font-weight:600;padding:5px 6px;outline:none;width:0;min-width:0}.prop-input.readonly[data-v-5752e009]{color:var(--muted)}.prop-input[data-v-5752e009]::-webkit-inner-spin-button{display:none}.prop-actions[data-v-5752e009],.action-row[data-v-5752e009]{display:flex;gap:4px;flex-wrap:wrap}.action-btn[data-v-5752e009]{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 4px;border-radius:6px;background:var(--surface2);border:1px solid var(--border);color:var(--muted);font-size:10px;font-family:var(--font-ui);font-weight:600;cursor:pointer;transition:background .12s,color .12s,border-color .12s;white-space:nowrap}.action-btn[data-v-5752e009]:hover{background:var(--border);color:var(--text)}.action-btn[data-v-5752e009]:disabled{opacity:.35;cursor:default}.action-btn.danger[data-v-5752e009]:hover{color:var(--danger);border-color:var(--danger)}.cut-btn.active[data-v-5752e009]{color:#ff8c47;border-color:#ff8c47;background:#ff8c4714}.rot-btns[data-v-5752e009]{display:flex;gap:4px}.rot-btn[data-v-5752e009]{flex:1;padding:5px 2px;border-radius:5px;font-size:10px;font-family:var(--font-mono);font-weight:700;background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:all .1s}.rot-btn[data-v-5752e009]:hover{color:#e8ff47;border-color:#e8ff47}.rot-btn.active[data-v-5752e009]{background:#e8ff471f;color:#e8ff47;border-color:#e8ff47}.sym-panel[data-v-63fcd2df]{display:flex;flex-direction:column;height:100%;overflow:hidden;gap:0}.search-row[data-v-63fcd2df]{display:flex;align-items:center;gap:6px;background:var(--surface2);border:1px solid var(--border);border-radius:7px;padding:5px 9px;margin:8px 8px 4px;transition:border-color .12s}.search-row[data-v-63fcd2df]:focus-within{border-color:var(--accent2)}.search-icon[data-v-63fcd2df]{color:var(--muted);flex-shrink:0}.search-input[data-v-63fcd2df]{flex:1;background:transparent;border:none;color:var(--text);font-size:12px;font-family:var(--font-ui);outline:none}.search-input[data-v-63fcd2df]::placeholder{color:var(--muted)}.size-row[data-v-63fcd2df]{display:flex;align-items:center;gap:7px;padding:4px 10px}.size-label[data-v-63fcd2df]{font-size:9px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.size-slider[data-v-63fcd2df]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;border-radius:2px;background:var(--border);outline:none;cursor:pointer}.size-slider[data-v-63fcd2df]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent);cursor:pointer}.size-val[data-v-63fcd2df]{font-size:10px;font-family:var(--font-mono);font-weight:700;color:var(--accent);min-width:34px;text-align:right}.cat-row[data-v-63fcd2df]{display:flex;flex-wrap:wrap;gap:3px;padding:4px 8px 6px;border-bottom:1px solid var(--border)}.cat-pill[data-v-63fcd2df]{padding:2px 7px;border-radius:5px;font-size:9px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.4px;background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:all .12s;white-space:nowrap}.cat-pill[data-v-63fcd2df]:hover{color:var(--text);border-color:#555}.cat-pill.active[data-v-63fcd2df]{background:#1a1a22}.sym-scroll[data-v-63fcd2df]{flex:1;overflow-y:auto;padding:8px}.sym-scroll[data-v-63fcd2df]::-webkit-scrollbar{width:4px}.sym-scroll[data-v-63fcd2df]::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.sym-group[data-v-63fcd2df]{margin-bottom:14px}.group-header[data-v-63fcd2df]{display:flex;align-items:center;gap:5px;font-size:9px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;padding-left:2px}.group-dot[data-v-63fcd2df]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sym-grid[data-v-63fcd2df]{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.sym-tile[data-v-63fcd2df]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;cursor:pointer;color:var(--muted);transition:all .12s;position:relative}.sym-tile[data-v-63fcd2df]:hover{background:#1e1e2a;border-color:var(--accent2);color:var(--text);transform:translateY(-1px);box-shadow:0 4px 12px #0006}.sym-tile[data-v-63fcd2df]:active{transform:translateY(0)}.sym-cat-dot[data-v-63fcd2df]{position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50}.sym-svg[data-v-63fcd2df]{width:38px;height:38px}.sym-name[data-v-63fcd2df]{font-size:8px;font-family:var(--font-ui);text-align:center;line-height:1.3;color:var(--muted);max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sym-tile:hover .sym-name[data-v-63fcd2df]{color:var(--text)}.no-results[data-v-63fcd2df]{text-align:center;color:var(--muted);font-size:12px;padding:24px;font-family:var(--font-ui)}.sym-footer[data-v-63fcd2df]{display:flex;align-items:center;gap:5px;padding:6px 10px;font-size:9px;color:#444;font-family:var(--font-ui);border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;line-height:1.4}.nesting-panel[data-v-9bc74a0a]{padding:12px 10px;display:flex;flex-direction:column;gap:10px;height:100%;overflow-y:auto}.section-head[data-v-9bc74a0a]{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text);font-family:var(--font-ui)}.die-badge[data-v-9bc74a0a]{padding:8px 10px;border-radius:8px;background:var(--surface2);border:1px solid var(--border)}.die-badge.empty[data-v-9bc74a0a]{border-color:#333}.db-label[data-v-9bc74a0a]{display:block;font-size:9px;font-weight:700;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:1px;margin-bottom:3px}.db-val[data-v-9bc74a0a]{font-size:13px;font-weight:700;color:var(--accent);font-family:var(--font-mono)}.db-val.muted[data-v-9bc74a0a]{color:var(--muted);font-size:11px;font-weight:400}.field-block[data-v-9bc74a0a]{display:flex;flex-direction:column;gap:4px}.field-lbl[data-v-9bc74a0a]{font-size:9px;font-weight:700;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.8px}.nest-select[data-v-9bc74a0a]{background:var(--surface2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:11px;padding:5px 8px;font-family:var(--font-ui);outline:none;cursor:pointer;width:100%}.nest-select[data-v-9bc74a0a]:focus{border-color:#555}.nest-input[data-v-9bc74a0a]{background:var(--surface2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;font-weight:600;padding:5px 8px;font-family:var(--font-mono);outline:none;width:100%}.nest-input[data-v-9bc74a0a]:focus{border-color:var(--accent)}.nest-input.sm[data-v-9bc74a0a],.nest-select.sm[data-v-9bc74a0a]{width:100%}.nest-input[data-v-9bc74a0a]::-webkit-inner-spin-button{display:none}.field-row-2[data-v-9bc74a0a]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field-row-3[data-v-9bc74a0a]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.input-sfx[data-v-9bc74a0a]{display:flex;align-items:center;gap:4px}.input-sfx span[data-v-9bc74a0a]{font-size:9px;color:var(--muted);font-family:var(--font-mono)}.compare-algo[data-v-9bc74a0a]{border-radius:8px;overflow:hidden;border:1px solid var(--border);font-size:11px;font-family:var(--font-mono)}.ca-head[data-v-9bc74a0a]{display:grid;grid-template-columns:1fr 70px 60px;gap:4px;padding:5px 8px;background:var(--surface2);color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.ca-row[data-v-9bc74a0a]{display:grid;grid-template-columns:1fr 70px 60px;gap:4px;padding:6px 8px;color:var(--muted);border-top:1px solid var(--border);transition:background .1s}.ca-row[data-v-9bc74a0a]:hover{background:#ffffff08}.ca-row.active[data-v-9bc74a0a]{color:var(--text);background:#e8ff470d;border-left:2px solid var(--accent)}.ca-name[data-v-9bc74a0a]{font-weight:600}.ca-count.best[data-v-9bc74a0a]{color:var(--accent);font-weight:800}.ca-waste.good[data-v-9bc74a0a]{color:#4cff80}.ca-waste.ok[data-v-9bc74a0a]{color:#fc0}.ca-waste.bad[data-v-9bc74a0a]{color:#f44}.preview-wrap[data-v-9bc74a0a]{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.nest-svg[data-v-9bc74a0a]{border-radius:4px;max-width:100%}.preview-label[data-v-9bc74a0a]{font-size:11px;color:var(--muted);font-family:var(--font-mono);display:flex;align-items:center;gap:6px}.preview-label b[data-v-9bc74a0a]{color:var(--accent)}.rot-badge[data-v-9bc74a0a]{background:#47c8ff26;color:#47c8ff;font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px}.algo-badge[data-v-9bc74a0a]{background:#e8ff471a;color:var(--accent);font-size:9px;padding:1px 5px;border-radius:3px}.empty-preview[data-v-9bc74a0a]{text-align:center;padding:20px;color:var(--muted);font-size:11px;font-family:var(--font-ui)}.results-grid[data-v-9bc74a0a]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.result-card[data-v-9bc74a0a]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:8px;background:var(--surface2);border:1px solid var(--border)}.result-card.accent[data-v-9bc74a0a]{border-color:var(--accent)}.result-card.good[data-v-9bc74a0a]{border-color:#4cff80}.result-card.ok[data-v-9bc74a0a]{border-color:#fc0}.result-card.bad[data-v-9bc74a0a]{border-color:#f44}.rc-val[data-v-9bc74a0a]{font-size:18px;font-weight:800;color:var(--text);font-family:var(--font-mono)}.rc-lbl[data-v-9bc74a0a]{font-size:9px;color:var(--muted);font-family:var(--font-ui);text-align:center}.export-nest-btn[data-v-9bc74a0a]{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:7px;border:1px solid rgba(232,255,71,.25);background:#e8ff4712;color:var(--accent);font-size:11px;font-weight:700;font-family:var(--font-ui);cursor:pointer;transition:all .12s}.export-nest-btn[data-v-9bc74a0a]:hover{background:#e8ff4724;border-color:#e8ff4766}.sheet-info[data-v-9bc74a0a]{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);font-family:var(--font-mono)}.recent-panel[data-v-2bbb1165]{display:flex;flex-direction:column;gap:8px;padding:10px 8px;height:100%;overflow-y:auto}.rp-header[data-v-2bbb1165]{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:700;letter-spacing:1px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;padding-bottom:2px}.open-btn[data-v-2bbb1165]{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:7px;background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:11px;font-family:var(--font-ui);cursor:pointer;transition:border-color .12s}.open-btn[data-v-2bbb1165]:hover{border-color:var(--accent)}.rp-empty[data-v-2bbb1165]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:30px 0;color:var(--muted);font-size:10px;font-family:var(--font-ui)}.rp-list[data-v-2bbb1165]{display:flex;flex-direction:column;gap:3px}.rp-item[data-v-2bbb1165]{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;border:1px solid var(--border);cursor:default;transition:border-color .12s}.rp-item[data-v-2bbb1165]:hover{border-color:#47c8ff44}.rp-icon[data-v-2bbb1165]{color:var(--muted);flex-shrink:0}.rp-info[data-v-2bbb1165]{display:flex;flex-direction:column;gap:2px;min-width:0}.rp-name[data-v-2bbb1165]{font-size:11px;color:var(--text);font-family:var(--font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-meta[data-v-2bbb1165]{display:flex;gap:6px;align-items:center}.rp-type[data-v-2bbb1165]{font-size:9px;color:var(--accent);font-family:var(--font-mono)}.rp-date[data-v-2bbb1165]{font-size:9px;color:var(--muted);font-family:var(--font-mono)}.clear-btn[data-v-2bbb1165]{margin-top:auto;padding:5px;border-radius:5px;background:transparent;border:1px solid var(--border);color:var(--muted);font-size:9px;font-family:var(--font-ui);cursor:pointer;transition:all .12s}.clear-btn[data-v-2bbb1165]:hover{border-color:#f44;color:#f65}.batch-panel[data-v-a275865c]{display:flex;flex-direction:column;gap:7px;padding:10px 8px;overflow-y:auto;height:100%}.batch-panel[data-v-a275865c]::-webkit-scrollbar{width:4px}.batch-panel[data-v-a275865c]::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.section-label[data-v-a275865c]{font-size:9px;font-weight:700;letter-spacing:1.2px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;padding-top:4px}.dropzone[data-v-a275865c]{border:1.5px dashed #2a2a3a;border-radius:10px;padding:18px 12px;display:flex;flex-direction:column;align-items:center;gap:6px;transition:all .15s;cursor:default}.dropzone.over[data-v-a275865c]{border-color:#47c8ff;background:#47c8ff0d}.dropzone.loaded[data-v-a275865c]{border-color:#4dff914d;border-style:solid;padding:12px}.drop-icon[data-v-a275865c]{color:#333}.drop-text[data-v-a275865c]{font-size:12px;color:#888;font-weight:600}.drop-hint[data-v-a275865c]{font-size:10px;color:#444}.drop-loaded[data-v-a275865c]{font-size:11px;color:#4dff91;font-weight:700;font-family:var(--font-mono)}.drop-count[data-v-a275865c]{font-size:10px;color:#4dff91;opacity:.7}.file-btn[data-v-a275865c]{margin-top:4px;padding:5px 16px;border-radius:6px;background:var(--surface2);border:1px solid var(--border);color:var(--text);font-size:11px;cursor:pointer;font-family:var(--font-ui);transition:all .12s}.file-btn[data-v-a275865c]:hover{border-color:#47c8ff;color:#47c8ff}.tmpl-row[data-v-a275865c]{display:flex;gap:6px;align-items:stretch}.tmpl-btn[data-v-a275865c]{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;background:transparent;border:1px solid #222;color:#555;font-size:10px;cursor:pointer;font-family:var(--font-ui);transition:all .12s}.tmpl-btn[data-v-a275865c]:hover:not(:disabled){color:#e8ff47;border-color:#e8ff47}.tmpl-btn[data-v-a275865c]:disabled{opacity:.4;cursor:default}.col-hint[data-v-a275865c]{display:flex;flex-wrap:wrap;gap:4px}.col-req[data-v-a275865c],.col-opt[data-v-a275865c]{padding:2px 7px;border-radius:3px;font-size:9px;font-family:var(--font-mono);font-weight:700}.col-req[data-v-a275865c]{background:#e8ff471a;color:#e8ff47;border:1px solid rgba(232,255,71,.2)}.col-opt[data-v-a275865c]{background:#ffffff0a;color:#555;border:1px solid #222}.col-legend[data-v-a275865c]{font-size:8px;color:#444;display:flex;align-items:center;gap:4px}.col-req-dot[data-v-a275865c],.col-opt-dot[data-v-a275865c]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.col-req-dot[data-v-a275865c]{background:#e8ff47}.col-opt-dot[data-v-a275865c]{background:#333;border:1px solid #555}.status-msg[data-v-a275865c]{font-size:10px;color:#4dff91;font-family:var(--font-mono);padding:4px 6px;background:#4dff910f;border-radius:4px}.status-msg.err[data-v-a275865c]{color:#f65;background:#ff66550f}.err-block[data-v-a275865c]{background:#ff66550f;border:1px solid rgba(255,102,85,.2);border-radius:6px;padding:6px 8px}.err-title[data-v-a275865c]{font-size:9px;font-weight:700;color:#f65;margin-bottom:4px}.err-row[data-v-a275865c]{font-size:9px;color:#c43;font-family:var(--font-mono);line-height:1.6}.preview-list[data-v-a275865c]{display:flex;flex-direction:column;gap:4px;max-height:260px;overflow-y:auto}.preview-list[data-v-a275865c]::-webkit-scrollbar{width:3px}.preview-list[data-v-a275865c]::-webkit-scrollbar-thumb{background:#333;border-radius:2px}.preview-item[data-v-a275865c]{display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:5px 8px}.mini-svg-click[data-v-a275865c]{cursor:pointer;border-radius:6px;padding:3px;border:1px solid transparent;transition:all .15s}.mini-svg-click[data-v-a275865c]:hover{border-color:#e8ff4766;background:#e8ff470d;transform:scale(1.06)}.mini-svg[data-v-a275865c]{flex-shrink:0;border-radius:3px;overflow:hidden}.preview-info[data-v-a275865c]{display:flex;flex-direction:column;gap:1px;min-width:0}.preview-name[data-v-a275865c]{font-size:10px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-type[data-v-a275865c]{font-size:8px;color:#556;font-family:var(--font-mono)}.preview-dims[data-v-a275865c]{font-size:9px;color:#47c8ff;font-family:var(--font-mono);font-weight:600}.exp-btn[data-v-a275865c]{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;cursor:pointer;font-size:11px;font-weight:700;font-family:var(--font-ui);transition:all .12s;width:100%}.exp-btn[data-v-a275865c]:disabled{opacity:.4;cursor:default}.exp-btn .exp-sub[data-v-a275865c]{font-size:8px;font-weight:400;opacity:.6;margin-left:auto}.dxf-btn[data-v-a275865c]{background:#e8ff471a;border:1px solid rgba(232,255,71,.25);color:#e8ff47}.dxf-btn[data-v-a275865c]:hover:not(:disabled){background:#e8ff472e}.pdf-btn[data-v-a275865c]{background:#47c8ff1a;border:1px solid rgba(71,200,255,.25);color:#47c8ff}.pdf-btn[data-v-a275865c]:hover:not(:disabled){background:#47c8ff2e}.exporting-hint[data-v-a275865c]{display:flex;align-items:center;gap:8px;font-size:10px;color:#888;font-family:var(--font-mono)}.spinner[data-v-a275865c]{width:12px;height:12px;border-radius:50%;border:2px solid #333;border-top-color:#47c8ff;animation:spin-a275865c .6s linear infinite;flex-shrink:0}@keyframes spin-a275865c{to{transform:rotate(360deg)}}.tmpl-badge[data-v-a275865c]{font-family:var(--font-mono);font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;letter-spacing:.5px;background:#47ff9126;color:#47ff91}.tmpl-excel[data-v-a275865c]{border-color:#47ff9140}.tmpl-excel[data-v-a275865c]:hover:not(:disabled){background:#47ff910f;border-color:#47ff9180}.ang-panel[data-v-95fb1253]{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg)}.ang-header[data-v-95fb1253]{display:flex;align-items:center;gap:7px;padding:8px 10px 6px;font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;border-bottom:1px solid var(--border)}.ang-scroll[data-v-95fb1253]{flex:1;overflow-y:auto;padding:4px 0}.ang-scroll[data-v-95fb1253]::-webkit-scrollbar{width:4px}.ang-scroll[data-v-95fb1253]::-webkit-scrollbar-thumb{background:var(--surface2);border-radius:2px}.ang-section[data-v-95fb1253]{padding:8px 10px;border-bottom:1px solid var(--border)}.ang-section-label[data-v-95fb1253]{font-size:8px;font-weight:700;letter-spacing:1.5px;color:var(--muted);font-family:var(--font-mono);text-transform:uppercase;margin-bottom:7px}.ang-section-label-row[data-v-95fb1253]{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.flute-grid[data-v-95fb1253]{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}.flute-btn[data-v-95fb1253]{display:flex;flex-direction:column;align-items:center;padding:5px 4px;border-radius:6px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .15s}.flute-btn[data-v-95fb1253]:hover{border-color:var(--border2)}.flute-btn.active[data-v-95fb1253]{border-color:#e8ff4766;background:#e8ff470f}.flute-id[data-v-95fb1253]{font-size:9px;font-weight:700;color:var(--text);font-family:var(--font-mono)}.flute-s[data-v-95fb1253]{font-size:8px;color:var(--muted);font-family:var(--font-mono)}.flute-info[data-v-95fb1253]{display:flex;flex-wrap:wrap;gap:6px;font-size:9px;color:var(--muted);font-family:var(--font-mono);background:var(--surface2);padding:5px 8px;border-radius:5px}.dim-row-3[data-v-95fb1253]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.dim-row-2[data-v-95fb1253]{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.dim-field[data-v-95fb1253]{display:flex;flex-direction:column;gap:3px}.dim-field>span[data-v-95fb1253]{font-size:9px;color:var(--muted);font-family:var(--font-mono)}.ang-input[data-v-95fb1253]{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:var(--font-mono);font-size:12px;padding:4px 6px;width:100%;transition:border .15s}.ang-input[data-v-95fb1253]:focus{outline:none;border-color:#e8ff4766}.ang-input[data-v-95fb1253]:disabled{opacity:.5;cursor:not-allowed}.auto-toggle[data-v-95fb1253]{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:9px;color:var(--muted);font-family:var(--font-mono)}.auto-toggle input[type=checkbox][data-v-95fb1253]{width:12px;height:12px}.pos-grid[data-v-95fb1253]{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pos-btn[data-v-95fb1253]{display:flex;flex-direction:column;align-items:center;gap:5px;padding:8px 4px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .15s;font-size:9px;color:var(--muted);font-family:var(--font-mono)}.pos-btn[data-v-95fb1253]:hover{border-color:var(--border2);color:var(--text)}.pos-btn.active[data-v-95fb1253]{border-color:#e8ff4766;background:#e8ff470d;color:#e8ff47}.schema-canvas[data-v-95fb1253]{display:block;margin:8px auto 0;border-radius:6px;border:1px solid var(--border)}.results-section[data-v-95fb1253]{background:#e8ff4705}.result-grid[data-v-95fb1253]{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px}.result-card[data-v-95fb1253]{padding:10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);text-align:center}.accent-yellow[data-v-95fb1253]{border-color:#e8ff4733}.accent-cyan[data-v-95fb1253]{border-color:#47c8ff33}.rc-val[data-v-95fb1253]{font-family:var(--font-mono);font-size:22px;font-weight:700;color:#e8ff47;line-height:1}.result-card.accent-cyan .rc-val[data-v-95fb1253]{color:#47c8ff}.rc-lbl[data-v-95fb1253]{font-size:9px;color:var(--muted);margin-top:3px}.rc-sub[data-v-95fb1253]{font-size:8px;color:var(--dim);font-family:var(--font-mono)}.breakdown-table[data-v-95fb1253]{margin-bottom:10px}.bt-row[data-v-95fb1253]{display:grid;grid-template-columns:1.5fr 1fr .7fr 1fr;font-size:11px;padding:4px 6px;border-radius:4px;gap:4px;align-items:center}.bt-row.header[data-v-95fb1253]{font-size:8px;font-weight:700;color:var(--muted);font-family:var(--font-mono);letter-spacing:.5px;text-transform:uppercase}.bt-row[data-v-95fb1253]:not(.header):hover{background:var(--surface2)}.bt-row.total[data-v-95fb1253]{font-weight:700;background:var(--surface);border:1px solid var(--border);margin-top:4px}.mono[data-v-95fb1253]{font-family:var(--font-mono)}.accent-yellow[data-v-95fb1253]{color:#e8ff47!important}.accent-cyan[data-v-95fb1253]{color:#47c8ff!important}.stack-check[data-v-95fb1253]{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;border:1px solid}.stack-check.ok[data-v-95fb1253]{border-color:#47ffb840;background:#47ffb80a;color:#47ffb8}.stack-check.warn[data-v-95fb1253]{border-color:#ffaa3240;background:#ffaa320a;color:#ffaa32}.stack-check svg[data-v-95fb1253]{flex-shrink:0;margin-top:2px}.sc-title[data-v-95fb1253]{font-size:10px;font-weight:600;color:var(--text)}.sc-detail[data-v-95fb1253]{font-size:9px;color:var(--muted);font-family:var(--font-mono);margin-top:2px}.sc-verdict[data-v-95fb1253]{font-size:9px;font-weight:600;margin-top:3px}.pallet-result[data-v-95fb1253]{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:var(--surface);border-radius:8px;border:1px solid var(--border);margin-top:8px}.pr-item[data-v-95fb1253]{display:flex;flex-direction:column;align-items:center}.pr-val[data-v-95fb1253]{font-family:var(--font-mono);font-size:18px;font-weight:700;color:var(--text);line-height:1}.pr-lbl[data-v-95fb1253]{font-size:8px;color:var(--muted);font-family:var(--font-mono);text-align:center;margin-top:2px}.pr-item.accent-yellow .pr-val[data-v-95fb1253]{color:#e8ff47}.pr-sep[data-v-95fb1253]{font-size:16px;color:var(--dim);font-weight:300}.ang-3d-wrap[data-v-95fb1253]{margin-top:8px;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:#0d0d1c;position:relative;width:100%}.ang-3d-label[data-v-95fb1253]{position:absolute;top:5px;left:8px;z-index:2;display:flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:8px;color:#ffffff59;pointer-events:none;letter-spacing:.5px}.ang-3d-canvas[data-v-95fb1253]{display:block;width:100%!important;height:180px!important}.right-panel[data-v-d218a971]{width:220px;min-width:220px;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border);overflow:hidden}.tab-bar[data-v-d218a971]{display:flex;border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;overflow-x:auto;flex-wrap:wrap}.tab-bar[data-v-d218a971]::-webkit-scrollbar{display:none}.tab-btn[data-v-d218a971]{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px;background:transparent;color:var(--muted);font-size:8px;font-family:var(--font-mono);letter-spacing:.3px;text-transform:uppercase;border-bottom:2px solid transparent;white-space:nowrap;transition:color .12s,border-color .12s;cursor:pointer}.tab-btn[data-v-d218a971]:hover{color:var(--text)}.tab-btn.active[data-v-d218a971]{color:var(--accent);border-bottom-color:var(--accent)}.tab-content[data-v-d218a971]{flex:1;overflow:hidden;display:flex;flex-direction:column}.tab-content[data-v-d218a971]>*{flex:1;overflow-y:auto}.status-bar[data-v-3f58136d]{height:28px;background:var(--surface);border-top:1px solid var(--border);display:flex;align-items:center;gap:0;padding:0 12px;font-family:var(--font-mono);font-size:10px;color:var(--muted);flex-shrink:0}.sep[data-v-3f58136d]{margin:0 8px;color:var(--border)}.spacer[data-v-3f58136d]{flex:1}.item[data-v-3f58136d]{white-space:nowrap}.item.sel[data-v-3f58136d]{color:var(--accent)}.hint[data-v-3f58136d]{opacity:.5;font-size:9px}.ai-bar-wrap[data-v-540e15fb]{position:relative;z-index:200}.lamp-btn[data-v-540e15fb]{display:flex;align-items:center;gap:6px;padding:5px 12px;background:linear-gradient(135deg,#1a1025,#2a1040);border:1px solid #5b21b6;border-radius:0 0 10px 10px;color:#c084fc;cursor:pointer;font-family:var(--font-ui);font-size:12px;font-weight:700;transition:all .15s;box-shadow:0 2px 12px #7c3aed4d}.lamp-btn[data-v-540e15fb]:hover,.lamp-btn.active[data-v-540e15fb]{background:linear-gradient(135deg,#2a1535,#3a1855);box-shadow:0 4px 20px #7c3aed80}.lamp-label[data-v-540e15fb]{letter-spacing:.5px}.lamp-chevron[data-v-540e15fb]{transition:transform .2s}.lamp-chevron.flipped[data-v-540e15fb]{transform:rotate(180deg)}.ai-drawer[data-v-540e15fb]{position:absolute;top:100%;left:50%;transform:translate(-50%);width:min(900px,96vw);background:#0f0f18;border:1px solid #3a1a6e;border-top:none;border-radius:0 0 16px 16px;box-shadow:0 16px 48px #000000b3;overflow:hidden}.ai-drawer-inner[data-v-540e15fb]{padding:16px 20px;display:flex;flex-direction:column;gap:12px}.ai-row[data-v-540e15fb]{display:flex;flex-direction:column;gap:8px}.ai-input-wrap[data-v-540e15fb]{display:flex;align-items:center;gap:8px;background:#1a1028;border:1px solid #4a1a8e;border-radius:10px;padding:7px 10px;transition:border-color .15s}.ai-input-wrap[data-v-540e15fb]:focus-within{border-color:#7c3aed}.ai-input[data-v-540e15fb]{flex:1;background:transparent;border:none;color:#fff;font-size:13px;font-family:var(--font-ui);outline:none}.ai-input[data-v-540e15fb]::placeholder{color:#546}.ai-send[data-v-540e15fb]{width:34px;height:34px;border-radius:8px;background:#7c3aed;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.ai-send[data-v-540e15fb]:hover:not(:disabled){background:#9333ea}.ai-send[data-v-540e15fb]:disabled{opacity:.4;cursor:default}.spin[data-v-540e15fb]{animation:spin-540e15fb 1s linear infinite}@keyframes spin-540e15fb{to{transform:rotate(360deg)}}.ex-chips[data-v-540e15fb]{display:flex;flex-wrap:wrap;gap:5px}.ex-chip[data-v-540e15fb]{padding:3px 10px;border-radius:20px;background:#1a1028;border:1px solid #3a1a5e;color:#869;font-size:10px;font-family:var(--font-ui);cursor:pointer;transition:all .12s}.ex-chip[data-v-540e15fb]:hover:not(:disabled){border-color:#7c3aed;color:#c084fc}.ex-chip[data-v-540e15fb]:disabled{opacity:.4;cursor:default}.ai-error[data-v-540e15fb]{font-size:11px;color:#f64;padding:6px 10px;background:#ff644414;border-radius:7px;border:1px solid rgba(255,100,68,.2)}.result-row[data-v-540e15fb]{display:flex;flex-wrap:wrap;align-items:flex-start;gap:12px;padding-top:4px}.res-type[data-v-540e15fb]{display:flex;gap:6px;flex-wrap:wrap;align-items:center;flex:0 0 100%}.type-badge[data-v-540e15fb]{padding:3px 10px;border-radius:4px;background:#7c3aed33;color:#c084fc;font-size:10px;font-weight:700;font-family:var(--font-mono);border:1px solid rgba(124,58,237,.3)}.mat-badge[data-v-540e15fb]{padding:3px 10px;border-radius:4px;background:#1a1028;color:#869;font-size:10px;font-family:var(--font-mono);border:1px solid #2a1a4e}.dims-row[data-v-540e15fb]{display:flex;gap:12px}.dim-cell[data-v-540e15fb]{display:flex;flex-direction:column;align-items:center}.dim-letter[data-v-540e15fb]{font-size:9px;color:#c084fc;font-family:var(--font-mono);font-weight:700}.dim-val[data-v-540e15fb]{font-size:26px;font-weight:800;color:#fff;font-family:var(--font-mono);line-height:1}.dim-unit[data-v-540e15fb]{font-size:9px;color:#546;font-family:var(--font-mono)}.res-reason[data-v-540e15fb]{font-size:11px;color:#869;font-style:italic;flex:1;min-width:180px;align-self:center}.res-tips[data-v-540e15fb]{margin:0;padding:0 0 0 14px}.res-tips li[data-v-540e15fb]{font-size:10px;color:#657;line-height:1.5}.apply-btn[data-v-540e15fb]{display:flex;align-items:center;gap:6px;padding:8px 18px;border-radius:8px;background:#7c3aed;border:none;color:#fff;font-size:12px;font-weight:700;font-family:var(--font-ui);cursor:pointer;transition:background .15s;white-space:nowrap;align-self:flex-start}.apply-btn[data-v-540e15fb]:hover{background:#9333ea}.slide-down-enter-active[data-v-540e15fb]{transition:all .22s cubic-bezier(.4,0,.2,1)}.slide-down-leave-active[data-v-540e15fb]{transition:all .18s cubic-bezier(.4,0,.2,1)}.slide-down-enter-from[data-v-540e15fb],.slide-down-leave-to[data-v-540e15fb]{opacity:0;transform:translate(-50%) translateY(-10px)}.nav-wrap[data-v-5c7bf6de]{position:absolute;bottom:10px;left:10px;z-index:100;display:flex;flex-direction:column;gap:0;background:#0a0a14eb;border:1px solid #1e2240;border-radius:6px;overflow:hidden;box-shadow:0 4px 24px #0009;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.nav-wrap.dragging[data-v-5c7bf6de]{border-color:#47c8ff66}.nav-title[data-v-5c7bf6de]{display:flex;align-items:center;gap:5px;font-size:8px;font-weight:700;letter-spacing:1.2px;color:#334;font-family:var(--font-mono);text-transform:uppercase;padding:4px 7px 2px;background:#0d0d1a;border-bottom:1px solid #151525}.nav-svg[data-v-5c7bf6de]{display:block}.vc-overlay[data-v-dae7bb78]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;background:#09090f;display:flex;flex-direction:column;font-family:var(--font-ui)}.vc-header[data-v-dae7bb78]{display:flex;align-items:center;gap:16px;padding:10px 20px;background:#111118;border-bottom:1px solid #1e1e2e;flex-shrink:0}.vc-title[data-v-dae7bb78]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:#f0f0f0;flex-shrink:0}.vc-type-badge[data-v-dae7bb78]{padding:2px 9px;border-radius:4px;background:#e8ff471f;color:#e8ff47;font-size:10px;font-weight:700;font-family:var(--font-mono);border:1px solid rgba(232,255,71,.2)}.vc-close[data-v-dae7bb78]{margin-left:auto;width:30px;height:30px;border-radius:6px;background:transparent;border:1px solid #333;color:#666;cursor:pointer;font-size:14px;flex-shrink:0;transition:all .12s}.vc-close[data-v-dae7bb78]:hover{background:#222;color:#eee;border-color:#555}.diff-bar[data-v-dae7bb78]{display:flex;align-items:center;gap:12px;flex:1;justify-content:center}.diff-item[data-v-dae7bb78]{display:flex;align-items:center;gap:5px}.diff-lbl[data-v-dae7bb78]{font-size:9px;color:#555;font-family:var(--font-mono);text-transform:uppercase}.diff-val[data-v-dae7bb78]{font-size:13px;font-weight:700;font-family:var(--font-mono);color:#555}.diff-val.changed[data-v-dae7bb78]{color:#47c8ff}.diff-val.better[data-v-dae7bb78]{color:#4dff91}.diff-val.worse[data-v-dae7bb78]{color:#f65}.diff-sep[data-v-dae7bb78]{width:1px;height:20px;background:#222}.vc-body[data-v-dae7bb78]{display:flex;flex:1;overflow:hidden;gap:0}.vc-col[data-v-dae7bb78]{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.vc-col-header[data-v-dae7bb78]{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#111118;border-bottom:1px solid #1e1e2e;flex-shrink:0}.var-label[data-v-dae7bb78]{font-size:11px;font-weight:800;letter-spacing:.5px;font-family:var(--font-mono);padding:2px 10px;border-radius:4px}.var-a[data-v-dae7bb78]{background:#47c8ff1f;color:#47c8ff;border:1px solid rgba(71,200,255,.25)}.var-b[data-v-dae7bb78]{background:#e8ff471f;color:#e8ff47;border:1px solid rgba(232,255,71,.25)}.sheet-info[data-v-dae7bb78]{font-size:11px;color:#555;font-family:var(--font-mono)}.apply-btn[data-v-dae7bb78]{margin-left:auto;display:flex;align-items:center;gap:5px;padding:5px 14px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;transition:all .12s}.apply-a[data-v-dae7bb78]{background:#47c8ff26;border:1px solid rgba(71,200,255,.3);color:#47c8ff}.apply-a[data-v-dae7bb78]:hover{background:#47c8ff40}.apply-b[data-v-dae7bb78]{background:#e8ff4726;border:1px solid rgba(232,255,71,.3);color:#e8ff47}.apply-b[data-v-dae7bb78]:hover{background:#e8ff4740}.vc-canvas[data-v-dae7bb78]{flex:1;width:100%;min-height:0;display:block}.vc-params[data-v-dae7bb78]{display:flex;flex-wrap:wrap;gap:6px;padding:8px 14px;background:#0f0f17;border-top:1px solid #1a1a28;flex-shrink:0}.vc-param-row[data-v-dae7bb78]{display:flex;flex-direction:column;gap:2px;min-width:80px;flex:1}.vc-param-row label[data-v-dae7bb78]{font-size:9px;color:#555;font-family:var(--font-mono);text-transform:uppercase}.pu[data-v-dae7bb78]{color:#333;font-size:8px}.vc-param-row input[data-v-dae7bb78]{background:#1a1a26;border:1px solid #2a2a38;color:#f0f0f0;border-radius:5px;padding:4px 7px;font-family:var(--font-mono);font-size:12px;font-weight:700;outline:none;width:100%;box-sizing:border-box}.vc-param-row input[data-v-dae7bb78]:focus{border-color:#47c8ff}.vc-param-row input[data-v-dae7bb78]::-webkit-inner-spin-button{display:none}.vc-divider[data-v-dae7bb78]{width:160px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;background:#0c0c12;border-left:1px solid #1a1a28;border-right:1px solid #1a1a28;overflow-y:auto;padding:16px 0;gap:8px}.vc-divider-line[data-v-dae7bb78]{flex:none;height:1px;width:80%;background:#1e1e2e}.vs-badge[data-v-dae7bb78]{font-size:11px;font-weight:900;color:#333;letter-spacing:2px;font-family:var(--font-mono);padding:4px 10px;border:1px solid #1e1e2e;border-radius:20px;flex-shrink:0}.diff-table[data-v-dae7bb78]{width:90%;display:flex;flex-direction:column;gap:2px}.dt-row[data-v-dae7bb78]{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;font-size:10px;font-family:var(--font-mono);padding:3px 4px;border-radius:3px}.dt-row span[data-v-dae7bb78]{text-align:center;color:#444}.dt-row span[data-v-dae7bb78]:first-child{text-align:left;color:#333}.dt-head[data-v-dae7bb78]{font-size:8px;color:#333!important;text-transform:uppercase;letter-spacing:.5px}.dt-head span[data-v-dae7bb78]{color:#333!important}.dt-sep[data-v-dae7bb78]{height:1px;background:#1a1a28;margin:4px 0}.dt-delta[data-v-dae7bb78]{background:#111118}.dt-row .changed[data-v-dae7bb78]{color:#47c8ff}.dt-row .better[data-v-dae7bb78]{color:#4dff91}.dt-row .worse[data-v-dae7bb78]{color:#f65}.app[data-v-779ed200]{width:100vw;height:100vh;display:flex;flex-direction:column;overflow:hidden}.top-bar[data-v-779ed200]{position:absolute;top:0;left:50%;transform:translate(-50%);z-index:300;pointer-events:none;display:flex;justify-content:center}.top-bar[data-v-779ed200]>*{pointer-events:auto}.main-row[data-v-779ed200]{display:flex;flex:1;overflow:hidden}.canvas-col[data-v-779ed200]{flex:1;overflow:hidden;position:relative}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f11;--surface: #18181c;--surface2: #22222a;--border: #2e2e38;--accent: #e8ff47;--accent2: #47c8ff;--fold: #ff8c47;--cut: #e8ff47;--text: #f0f0f0;--muted: #888;--danger: #ff4747;--font-ui: "Syne", sans-serif;--font-mono: "DM Mono", monospace}html,body,#app{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-ui)}button{font-family:var(--font-ui);cursor:pointer;border:none;outline:none}input,select{font-family:var(--font-mono);background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:4px;padding:6px 10px;font-size:13px;width:100%;transition:border-color .15s}input:focus,select:focus{outline:none;border-color:var(--accent)}input[type=range]{padding:0;background:transparent;border:none;accent-color:var(--accent)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
