:root{--bg-base:#0b1121;--bg-surface:#111827;--bg-elevated:#1f2937;--bg-hover:#374151;--accent:#22d3ee;--accent-soft:#22d3ee26;--accent-hover:#06b6d4;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--border:#1e293b;--border-strong:#334155;--success:#10b981;--warning:#f59e0b;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"Fira Code", "JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;line-height:1.5;overflow:hidden}body.focus-fullscreen-active{overflow:hidden}#app{width:100vw;height:100vh;display:flex}.app-boot-fallback{background:var(--bg-base);width:100vw;height:100vh;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.app-boot-fallback strong{color:var(--text-secondary);font-size:.95rem}.app-boot-fallback span{max-width:min(36rem,100vw - 2rem);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.78rem}.glass{-webkit-backdrop-filter:blur(12px);background:#1e293bb3;border:1px solid #ffffff0d}h1,h2,h3,h4{color:var(--text-primary);font-weight:600}.btn{border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--accent);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 16px #3b82f666}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-strong);background-color:#0000}.btn-secondary:hover{background-color:var(--bg-elevated);color:var(--text-primary)}.input{background-color:var(--bg-base);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-md);font-family:var(--font-mono);width:100%;padding:.5rem .75rem;transition:border-color .2s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);margin-bottom:.25rem;font-size:.875rem;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.left-sidebar[data-v-7b34473c]{width:var(--left-sidebar-width,320px);flex:0 0 var(--left-sidebar-width,320px);background-color:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;gap:1.25rem;min-width:260px;max-width:560px;height:100%;padding:1.25rem;display:flex;overflow-y:auto}.left-sidebar[data-v-7b34473c]::-webkit-scrollbar{width:4px}.left-sidebar[data-v-7b34473c]::-webkit-scrollbar-track{background:0 0}.left-sidebar[data-v-7b34473c]::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.panel-section[data-v-7b34473c]{flex-direction:column;gap:.75rem;display:flex}.section-header[data-v-7b34473c]{color:var(--text-muted);letter-spacing:.05em;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;display:flex}.indicator[data-v-7b34473c]{background-color:var(--accent);border-radius:2px;width:4px;height:12px}.badge[data-v-7b34473c]{border-radius:12px;margin-left:auto;padding:.2rem .5rem;font-size:.65rem;font-weight:700}.badge.gray[data-v-7b34473c]{color:var(--text-muted);background-color:var(--bg-elevated)}.badge.cyan[data-v-7b34473c]{color:var(--accent);background-color:var(--accent-soft)}.btn-sm[data-v-7b34473c]{border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-base);color:var(--text-secondary);cursor:pointer;padding:.4rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s}.btn-sm[data-v-7b34473c]:hover{border-color:var(--accent);color:var(--accent)}.btn-sm.active[data-v-7b34473c]{background-color:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.hint-text[data-v-7b34473c]{color:var(--text-muted);font-size:.75rem;line-height:1.4}.category-toggle[data-v-7b34473c]{gap:.5rem;display:flex}.toggle-btn[data-v-7b34473c]{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--bg-base);color:var(--text-muted);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:.85rem;font-weight:600;transition:all .25s;display:flex}.toggle-btn[data-v-7b34473c]:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-secondary);background-color:var(--bg-elevated)}.toggle-btn.active[data-v-7b34473c]{border-color:var(--accent);color:var(--accent);background-color:var(--accent-soft);box-shadow:0 0 12px #22d3ee26}.toggle-icon[data-v-7b34473c]{font-size:1.1rem}.axis-options[data-v-7b34473c]{flex-direction:column;gap:.5rem;display:flex}.axis-option[data-v-7b34473c]{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--bg-base);cursor:pointer;padding:.75rem;transition:all .2s}.axis-option[data-v-7b34473c]:hover{border-color:var(--border-strong);background-color:var(--bg-elevated)}.axis-option.active[data-v-7b34473c]{border-color:var(--accent);background-color:#22d3ee0d}.option-header[data-v-7b34473c]{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.option-radio[data-v-7b34473c]{border:2px solid var(--border-strong);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;transition:border-color .2s;display:flex}.axis-option.active .option-radio[data-v-7b34473c]{border-color:var(--accent)}.radio-dot[data-v-7b34473c]{background-color:var(--accent);border-radius:50%;width:7px;height:7px}.option-name[data-v-7b34473c]{color:var(--text-primary);font-size:.85rem;font-weight:600}.option-desc[data-v-7b34473c]{color:var(--text-muted);margin:0;padding-left:1.35rem;font-size:.7rem}.material-form[data-v-7b34473c]{flex-direction:column;gap:.75rem;display:flex}.dimension-inputs[data-v-7b34473c]{flex-direction:column;gap:.5rem;display:flex}.dim-input-group[data-v-7b34473c]{align-items:center;gap:.75rem;display:flex}.dim-input-group label[data-v-7b34473c]{color:var(--text-muted);flex-shrink:0;width:100px;font-size:.75rem;font-weight:500}.dim-input-group .input[data-v-7b34473c]{background-color:var(--bg-base);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-md);font-family:var(--font-mono);flex:1;padding:.4rem .6rem;font-size:.85rem;transition:border-color .2s}.dim-input-group .input[data-v-7b34473c]:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.dim-visual[data-v-7b34473c]{background-color:var(--bg-base);border-radius:var(--radius-md);border:1px solid var(--border);justify-content:center;align-items:center;gap:.5rem;padding:.5rem;display:flex}.dim-badge[data-v-7b34473c]{font-family:var(--font-mono);color:var(--accent);background-color:var(--accent-soft);border-radius:4px;padding:.2rem .5rem;font-size:.8rem;font-weight:600}.dim-x[data-v-7b34473c]{color:var(--text-muted);font-size:.75rem}.panel-card[data-v-7b34473c]{background-color:var(--bg-base);border-radius:var(--radius-md);border:1px solid var(--border);align-items:center;gap:1rem;padding:1rem;display:flex}.icon-box[data-v-7b34473c]{background-color:var(--bg-elevated);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;display:flex}.icon-box.gold[data-v-7b34473c]{background-color:#f59e0b1a}.details h3[data-v-7b34473c]{color:var(--text-primary);margin:0;font-size:.9rem}.details p[data-v-7b34473c]{color:var(--text-muted);margin:.25rem 0 0;font-size:.7rem}.axis-list[data-v-7b34473c]{flex-direction:column;gap:.25rem;display:flex}.axis-row[data-v-7b34473c]{background-color:var(--bg-base);border-radius:var(--radius-md);border:1px solid var(--border);justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex}.axis-label[data-v-7b34473c]{font-size:.9rem;font-weight:700}.axis-label.x[data-v-7b34473c]{color:#ef4444}.axis-label.y[data-v-7b34473c]{color:#10b981}.axis-label.z[data-v-7b34473c]{color:#3b82f6}.axis-label.a[data-v-7b34473c],.axis-label.c[data-v-7b34473c]{color:var(--text-secondary)}.axis-value[data-v-7b34473c]{font-family:var(--font-mono);color:var(--text-primary);font-size:1.1rem}.axis-value .unit[data-v-7b34473c]{color:var(--text-muted);margin-left:.2rem;font-size:.7rem}.stats-row[data-v-7b34473c]{gap:.75rem;display:flex}.stats-row .stat[data-v-7b34473c]{background-color:var(--bg-base);border-radius:var(--radius-md);border:1px solid var(--border);flex:1;padding:.75rem}.stat label[data-v-7b34473c]{color:var(--text-muted);margin-bottom:.25rem;font-size:.65rem;display:block}.stat .val[data-v-7b34473c]{font-family:var(--font-mono);color:var(--text-primary);font-size:1rem}.stat .val span[data-v-7b34473c]{color:var(--text-muted);font-size:.65rem}.tool-select[data-v-7b34473c]{background-color:var(--accent-soft);color:var(--accent);cursor:pointer;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%2322d3ee%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E);background-position:right .5rem top 50%;background-repeat:no-repeat;background-size:.65rem;border:1px solid #22d3ee4d;outline:none;padding-right:1.5rem}.tool-select option[data-v-7b34473c]{background-color:var(--bg-surface);color:var(--text-primary)}.material-grid[data-v-7b34473c]{flex-direction:column;gap:.35rem;display:flex}.material-chip[data-v-7b34473c]{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--bg-base);cursor:pointer;flex-direction:column;padding:.5rem .75rem;transition:all .2s;display:flex}.material-chip[data-v-7b34473c]:hover{border-color:var(--border-strong);background-color:var(--bg-elevated)}.material-chip.active[data-v-7b34473c]{border-color:var(--accent);background-color:#22d3ee0d;box-shadow:0 0 8px #22d3ee1a}.mat-name[data-v-7b34473c]{color:var(--text-primary);font-size:.8rem;font-weight:600}.mat-info[data-v-7b34473c]{color:var(--text-muted);font-size:.65rem;font-family:var(--font-mono)}.toggle-row[data-v-7b34473c]{gap:.5rem;display:flex}.status-btn[data-v-7b34473c]{border-radius:var(--radius-md);border:1px solid var(--border);background-color:var(--bg-base);color:var(--text-muted);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .5rem;font-size:.72rem;font-weight:600;transition:all .25s;display:flex}.status-btn[data-v-7b34473c]:hover{border-color:var(--border-strong);background-color:var(--bg-elevated)}.status-btn.active[data-v-7b34473c]{border-color:var(--success);color:var(--success);background-color:#10b98114}.status-btn.coolant.active[data-v-7b34473c]{color:#60a5fa;background-color:#3b82f614;border-color:#3b82f6}.status-icon[data-v-7b34473c]{font-size:.9rem}.status-icon.spinning[data-v-7b34473c]{animation:1s linear infinite spin-7b34473c}@keyframes spin-7b34473c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.collision-bar[data-v-7b34473c]{border-radius:var(--radius-md);background-color:var(--bg-base);border:1px solid var(--border);color:var(--text-muted);align-items:center;gap:.5rem;padding:.4rem .75rem;font-size:.75rem;font-weight:600;transition:all .3s;display:flex}.collision-bar .collision-dot[data-v-7b34473c]{background-color:var(--text-muted);border-radius:50%;width:8px;height:8px;transition:background-color .3s}.collision-bar.normal_cut[data-v-7b34473c]{color:#10b981;border-color:#10b9814d}.collision-bar.normal_cut .collision-dot[data-v-7b34473c]{background-color:#10b981}.collision-bar.heavy_cut[data-v-7b34473c]{color:#f59e0b;background-color:#f59e0b0d;border-color:#f59e0b4d}.collision-bar.heavy_cut .collision-dot[data-v-7b34473c]{background-color:#f59e0b}.collision-bar.crash[data-v-7b34473c],.collision-bar.overcut[data-v-7b34473c]{color:#ef4444;background-color:#ef44441a;border-color:#ef444480;animation:.5s ease-in-out infinite alternate collision-pulse-7b34473c}.collision-bar.crash .collision-dot[data-v-7b34473c],.collision-bar.overcut .collision-dot[data-v-7b34473c]{background-color:#ef4444}.collision-alert[data-v-7b34473c]{border-radius:var(--radius-sm);color:#ef4444;background-color:#ef444426;border:1px solid #ef444480;margin-bottom:.5rem;padding:.5rem .75rem;font-size:.8rem;font-weight:600;animation:.5s ease-in-out infinite alternate collision-pulse-7b34473c}.level-btn[data-v-7b34473c]{border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--bg-base);color:var(--text-muted);cursor:pointer;flex:1;padding:.35rem .5rem;font-size:.75rem;font-weight:600;transition:all .2s}.level-btn[data-v-7b34473c]:hover{border-color:var(--accent);color:var(--accent)}.level-btn.active[data-v-7b34473c]{background-color:var(--accent-soft);border-color:var(--accent);color:var(--accent)}@keyframes collision-pulse-7b34473c{0%{box-shadow:0 0 #ef44441a}to{box-shadow:0 0 12px 2px #ef44444d}}.collision-force[data-v-7b34473c]{font-family:var(--font-mono);margin-left:auto;font-size:.7rem}.physics-grid[data-v-7b34473c]{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.gauge[data-v-7b34473c]{background-color:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius-md);padding:.5rem .6rem}.gauge-label[data-v-7b34473c]{color:var(--text-muted);margin-bottom:.15rem;font-size:.6rem}.gauge-value[data-v-7b34473c]{font-family:var(--font-mono);color:var(--text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.gauge-value span[data-v-7b34473c]{color:var(--text-muted);font-size:.6rem;font-weight:400}.gauge-bar[data-v-7b34473c]{background-color:var(--bg-elevated);border-radius:2px;height:3px;overflow:hidden}.gauge-fill[data-v-7b34473c]{border-radius:2px;height:100%;transition:width .3s}.gauge-fill.force[data-v-7b34473c]{background-color:#22d3ee}.gauge-fill.temp[data-v-7b34473c]{background-color:#f59e0b}.gauge-fill.power[data-v-7b34473c]{background-color:#a855f7}.gauge-fill.roughness[data-v-7b34473c]{background-color:#10b981}.gauge-fill.tool-life[data-v-7b34473c]{background-color:#22d3ee}.speed-analysis[data-v-7b34473c]{background-color:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:.4rem;padding:.5rem .75rem;display:flex}.speed-row[data-v-7b34473c]{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.72rem;display:flex}.speed-val[data-v-7b34473c]{font-family:var(--font-mono);color:var(--text-primary);margin-left:auto;font-weight:600}.efficiency-bar[data-v-7b34473c]{background-color:var(--bg-elevated);border-radius:2px;flex:1;height:4px;overflow:hidden}.efficiency-fill[data-v-7b34473c]{background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981);border-radius:2px;height:100%;transition:width .5s}.resonance-warn[data-v-7b34473c]{color:#f59e0b;background-color:#f59e0b14;border:1px solid #f59e0b33;border-radius:4px;padding:.35rem .5rem;font-size:.68rem}.machining-grid[data-v-7b34473c]{grid-template-columns:repeat(5,1fr);gap:.3rem;margin-bottom:.25rem;display:grid}.mt-btn[data-v-7b34473c]{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:6px;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem .2rem;font-family:inherit;font-size:.65rem;transition:all .15s;display:flex}.mt-btn[data-v-7b34473c]:hover:not(.disabled){border-color:var(--accent);color:var(--accent)}.mt-btn.active[data-v-7b34473c]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.mt-btn.disabled[data-v-7b34473c]{opacity:.35;cursor:not-allowed}.mt-icon[data-v-7b34473c]{font-size:1.3rem;line-height:1}.mt-name[data-v-7b34473c]{font-size:.65rem;font-weight:500}.grinding-note[data-v-7b34473c]{color:#fbbf24;font-size:.72rem;font-family:var(--font-mono);background:linear-gradient(90deg,#fbbf241a,#fbbf2405);border:1px solid #fbbf244d;border-radius:6px;align-items:center;gap:.4rem;margin-bottom:.5rem;padding:.4rem .6rem;font-weight:600;display:flex}.grinding-note .note-icon[data-v-7b34473c]{font-size:1rem}.grinding-note .note-sub[data-v-7b34473c]{color:var(--text-muted);font-size:.65rem;font-weight:400}.playback-bar[data-v-78a181b1]{background-color:var(--bg-surface);border-top:1px solid var(--border);-webkit-user-select:none;user-select:none;align-items:center;gap:1.5rem;height:56px;padding:0 1.5rem;display:flex}.controls[data-v-78a181b1]{align-items:center;gap:.4rem;display:flex}.icon-btn[data-v-78a181b1]{background-color:var(--bg-elevated);border:1px solid var(--border);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:.8rem;transition:all .15s;display:flex}.icon-btn[data-v-78a181b1]:hover{background-color:var(--bg-hover);color:var(--text-primary);border-color:var(--border-strong)}.play-btn[data-v-78a181b1]{background-color:var(--accent-soft);border-color:var(--accent);color:var(--accent);border-radius:50%;width:36px;height:36px;font-size:1rem;transition:all .2s}.play-btn[data-v-78a181b1]:hover{background-color:var(--accent);color:#fff;transform:scale(1.05)}.timeline-container[data-v-78a181b1]{flex:1;align-items:center;gap:.75rem;display:flex}.time[data-v-78a181b1]{font-family:var(--font-mono);color:var(--text-muted);text-align:center;min-width:36px;font-size:.8rem}.time.current[data-v-78a181b1]{color:var(--text-primary)}.progress-track[data-v-78a181b1]{background-color:var(--bg-elevated);cursor:pointer;border-radius:3px;flex:1;height:6px;position:relative}.progress-track[data-v-78a181b1]:hover{height:8px}.progress-fill[data-v-78a181b1]{background:linear-gradient(90deg, var(--accent), #06b6d4);border-radius:3px;height:100%;transition:width .1s linear;position:absolute;top:0;left:0}.progress-thumb[data-v-78a181b1]{background-color:var(--accent);width:14px;height:14px;box-shadow:0 0 8px var(--accent-soft), 0 2px 4px #0000004d;cursor:grab;border-radius:50%;transition:transform .15s;position:absolute;top:50%;transform:translate(-50%,-50%)}.progress-thumb[data-v-78a181b1]:hover{transform:translate(-50%,-50%)scale(1.3)}.right-controls[data-v-78a181b1]{align-items:center;gap:1rem;display:flex}.percentage[data-v-78a181b1]{color:var(--text-muted);flex-direction:column;align-items:flex-end;min-width:55px;font-size:.7rem;display:flex}.percentage strong[data-v-78a181b1]{font-family:var(--font-mono);color:var(--text-primary);font-size:1rem}.pct-label[data-v-78a181b1]{color:var(--text-muted);letter-spacing:.03em;font-size:.6rem}.speed-toggle[data-v-78a181b1]{background-color:var(--bg-base);border:1px solid var(--border);border-radius:6px;padding:2px;display:flex}.speed-toggle button[data-v-78a181b1]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.65rem;font-weight:600;transition:all .15s}.speed-toggle button[data-v-78a181b1]:hover{color:var(--text-secondary)}.speed-toggle button.active[data-v-78a181b1]{background-color:var(--bg-elevated);color:var(--accent)}.status-badge[data-v-78a181b1]{letter-spacing:.08em;background-color:var(--bg-base);border:1px solid var(--border);color:var(--text-muted);border-radius:12px;align-items:center;gap:.5rem;padding:.3rem .75rem;font-size:.65rem;font-weight:700;transition:all .3s;display:flex}.status-badge.running[data-v-78a181b1]{color:var(--warning);background-color:#f59e0b1a;border-color:#f59e0b4d}.status-badge.paused[data-v-78a181b1]{background-color:var(--accent-soft);color:var(--accent);border-color:#22d3ee4d}.status-badge.completed[data-v-78a181b1]{color:var(--success);background-color:#10b9811a;border-color:#10b9814d}.status-dot[data-v-78a181b1]{background-color:var(--text-muted);border-radius:50%;width:6px;height:6px}.status-badge.running .status-dot[data-v-78a181b1]{animation:1.2s ease-in-out infinite pulse-dot-78a181b1}@keyframes pulse-dot-78a181b1{0%,to{opacity:1}50%{opacity:.3}}.part-form[data-v-17ae11f6]{flex-direction:column;flex-shrink:0;gap:.5rem;padding:0;display:flex}.form-accordion[data-v-17ae11f6]{background:var(--bg-surface,#1e293b);border-top:1px solid var(--border,#334155);border-bottom:1px solid var(--border,#334155)}.form-accordion[open][data-v-17ae11f6]{background:var(--bg-elevated,#1e293b66)}.form-summary[data-v-17ae11f6]{color:var(--text-secondary,#cbd5e1);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8rem;font-weight:500;list-style:none;display:flex}.form-summary[data-v-17ae11f6]::-webkit-details-marker{display:none}.form-summary[data-v-17ae11f6]:hover{color:var(--text-primary,#e2e8f0)}.summary-icon[data-v-17ae11f6]{color:var(--text-muted,#94a3b8);font-size:.7rem;transition:transform .2s;display:inline-block}.form-accordion[open] .summary-icon[data-v-17ae11f6]{transform:rotate(90deg)}.summary-badge[data-v-17ae11f6]{background:var(--accent-soft,#3b82f626);color:var(--accent,#3b82f6);border-radius:3px;margin-left:auto;padding:.15rem .5rem;font-size:.75rem}.summary-hint[data-v-17ae11f6]{color:var(--text-muted,#94a3b8);margin-left:auto;font-size:.75rem;font-style:italic}.form-body[data-v-17ae11f6]{flex-direction:column;gap:.75rem;padding:.5rem .75rem .75rem;display:flex}.form-section[data-v-17ae11f6]{flex-direction:column;gap:.5rem;display:flex}.section-label[data-v-17ae11f6]{color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.part-type-grid[data-v-17ae11f6]{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.part-type-btn[data-v-17ae11f6]{background:var(--bg-elevated,#1e293b);border:1px solid var(--border,#334155);color:var(--text-primary,#e2e8f0);cursor:pointer;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.6rem .4rem;font-size:.75rem;transition:all .15s;display:flex}.part-type-btn[data-v-17ae11f6]:hover{background:var(--bg-hover,#334155);border-color:var(--accent,#3b82f6)}.part-type-btn.active[data-v-17ae11f6]{background:var(--accent-soft,#3b82f626);border-color:var(--accent,#3b82f6);color:var(--accent,#3b82f6)}.pt-icon[data-v-17ae11f6]{font-size:1.1rem}.pt-name[data-v-17ae11f6]{font-weight:500}.fields[data-v-17ae11f6]{flex-direction:column;gap:.5rem;display:flex}.field[data-v-17ae11f6]{flex-direction:column;gap:.25rem;display:flex}.field-label[data-v-17ae11f6]{color:var(--text-secondary,#cbd5e1);font-size:.75rem}.field-unit[data-v-17ae11f6]{color:var(--text-muted,#94a3b8);font-weight:400}.required-mark[data-v-17ae11f6]{color:#ef4444;margin-left:.15rem}.field-input[data-v-17ae11f6]{background:var(--bg-elevated,#1e293b);border:1px solid var(--border,#334155);color:var(--text-primary,#e2e8f0);border-radius:4px;padding:.4rem .6rem;font-family:inherit;font-size:.8rem}.field-input[data-v-17ae11f6]:focus{border-color:var(--accent,#3b82f6);outline:none}.array-field[data-v-17ae11f6]{background:var(--bg-elevated,#1e293b80);border-radius:4px;flex-direction:column;gap:.4rem;padding:.5rem;display:flex}.array-item[data-v-17ae11f6]{align-items:center;gap:.3rem;display:flex}.array-item-index[data-v-17ae11f6]{color:var(--text-muted,#94a3b8);text-align:center;min-width:1.5rem;font-size:.7rem}.array-sub-input[data-v-17ae11f6]{flex:1;min-width:0}.btn-add[data-v-17ae11f6],.btn-remove[data-v-17ae11f6]{border:1px dashed var(--border,#334155);color:var(--text-secondary,#cbd5e1);cursor:pointer;background:0 0;border-radius:4px;padding:.35rem;font-size:.75rem}.btn-add[data-v-17ae11f6]:hover{border-color:var(--accent,#3b82f6);color:var(--accent,#3b82f6)}.btn-remove[data-v-17ae11f6]{color:#ef4444;border-style:solid;border-color:#ef4444;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:flex}.btn-remove[data-v-17ae11f6]:hover{background:#ef444426}.form-errors[data-v-17ae11f6]{background:#ef44441a;border:1px solid #ef44444d;border-radius:4px;padding:.5rem .75rem}.error-line[data-v-17ae11f6]{color:#ef4444;font-size:.75rem}.config-changes[data-v-e4cf0612]{background:#3b82f614;border:1px solid #3b82f64d;border-radius:4px;flex-shrink:0;margin-top:.5rem;padding:.6rem .75rem}.panel-header[data-v-e4cf0612]{color:#3b82f6;align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.header-icon[data-v-e4cf0612]{font-size:.9rem}.header-text[data-v-e4cf0612]{font-size:.8rem}.header-count[data-v-e4cf0612]{color:var(--text-muted,#94a3b8);font-size:.75rem;font-weight:400}.change-list[data-v-e4cf0612]{flex-direction:column;gap:.25rem;margin:0 0 .6rem;padding:0;list-style:none;display:flex}.change-list li[data-v-e4cf0612]{flex-wrap:wrap;align-items:center;gap:.4rem;padding:.15rem .2rem;font-size:.8rem;display:flex}.change-list li.error[data-v-e4cf0612]{background:#ef44441a;border-left:2px solid #ef4444;border-radius:2px;padding:.2rem .4rem}.change-key[data-v-e4cf0612]{color:var(--text-secondary,#cbd5e1);font-weight:500}.change-old[data-v-e4cf0612]{color:var(--text-muted,#94a3b8)}.change-arrow[data-v-e4cf0612]{color:var(--text-muted,#64748b)}.change-new[data-v-e4cf0612]{color:#3b82f6;font-weight:500}.change-error[data-v-e4cf0612]{color:#ef4444;font-size:.75rem}.panel-actions[data-v-e4cf0612]{justify-content:flex-end;gap:.5rem;display:flex}.btn-apply[data-v-e4cf0612],.btn-cancel[data-v-e4cf0612]{cursor:pointer;border:1px solid #0000;border-radius:4px;padding:.4rem .9rem;font-size:.8rem;font-weight:500;transition:all .15s}.btn-apply[data-v-e4cf0612]{color:#fff;background:#3b82f6}.btn-apply[data-v-e4cf0612]:hover:not(:disabled){background:#2563eb}.btn-cancel[data-v-e4cf0612]{color:var(--text-secondary,#cbd5e1);border-color:var(--border,#334155);background:0 0}.btn-cancel[data-v-e4cf0612]:hover:not(:disabled){background:var(--bg-hover,#334155)}button[data-v-e4cf0612]:disabled{opacity:.5;cursor:not-allowed}.gcode-preview[data-v-b91796ff]{background:#02061757;border:1px solid #94a3b829;border-radius:8px;flex-direction:column;gap:.5rem;min-height:0;display:flex;overflow:hidden}.preview-head[data-v-b91796ff]{background:#0f172ac7;border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:center;gap:.5rem;min-height:36px;padding:0 .65rem;display:flex}.preview-title[data-v-b91796ff]{min-width:0;color:var(--text-secondary,#cbd5e1);align-items:center;gap:.4rem;font-size:.74rem;font-weight:800;display:flex}.preview-title svg[data-v-b91796ff]{color:var(--accent,#22d3ee)}.preview-title small[data-v-b91796ff]{color:var(--text-muted,#94a3b8);font-family:var(--font-mono,monospace);font-size:.64rem;font-weight:500}.preview-status[data-v-b91796ff]{color:#34d399;background:#10b98114;border:1px solid #10b98159;border-radius:5px;flex:none;padding:.16rem .38rem;font-size:.64rem}.preview-status.warning[data-v-b91796ff]{color:#fbbf24;background:#f59e0b17;border-color:#f59e0b5c}.preview-status.pending[data-v-b91796ff]{color:var(--text-muted,#94a3b8);background:#94a3b814;border-color:#94a3b838}.error-banner[data-v-b91796ff]{color:#fbbf24;background:#f59e0b14;border:1px solid #f59e0b47;border-radius:6px;gap:.5rem;margin:0 .55rem;padding:.5rem .6rem;font-size:.7rem;display:flex}.error-banner strong[data-v-b91796ff]{color:#fde68a;margin-bottom:.2rem;display:block}.error-banner ul[data-v-b91796ff]{margin:0;padding-left:1rem}.explanation[data-v-b91796ff]{color:var(--text-secondary,#cbd5e1);white-space:pre-wrap;border-left:2px solid #22d3ee6b;margin:0 .55rem;padding:.2rem 0 .2rem .55rem;font-size:.74rem;line-height:1.55}.preview-empty[data-v-b91796ff]{min-height:118px;color:var(--text-muted,#94a3b8);place-items:center;padding:1rem;font-size:.74rem;display:grid}.code-block[data-v-b91796ff]{min-height:118px;max-height:270px;font-family:var(--font-mono,"Menlo", "Consolas", monospace);background:#050b15;padding:.45rem 0;font-size:.72rem;line-height:1.45;overflow:auto}.code-line[data-v-b91796ff]{grid-template-columns:2.5rem minmax(0,1fr) auto;align-items:baseline;gap:.55rem;padding:.04rem .65rem .04rem 0;display:grid}.code-line[data-v-b91796ff]:hover{background:#ffffff09}.code-line.has-error[data-v-b91796ff]{background:#f59e0b1a}.line-num[data-v-b91796ff]{color:#475569;text-align:right;-webkit-user-select:none;user-select:none}.line-text[data-v-b91796ff]{white-space:pre;color:#dbeafe;min-width:0;overflow:visible}.line-error[data-v-b91796ff]{text-overflow:ellipsis;white-space:nowrap;color:#fbbf24;max-width:180px;font-size:.66rem;overflow:hidden}.preview-actions[data-v-b91796ff]{background:#0f172ab8;border-top:1px solid #94a3b824;justify-content:flex-end;gap:.4rem;min-height:38px;padding:.45rem .55rem;display:flex}.action[data-v-b91796ff]{height:28px;color:var(--text-secondary,#cbd5e1);cursor:pointer;background:#0206175c;border:1px solid #94a3b833;border-radius:6px;justify-content:center;align-items:center;gap:.3rem;padding:0 .55rem;font-size:.7rem;font-weight:800;display:inline-flex}.action[data-v-b91796ff]:hover:not(:disabled){color:var(--accent,#22d3ee);background:#22d3ee14;border-color:#22d3ee6b}.action.primary[data-v-b91796ff]{color:var(--accent,#22d3ee);background:#22d3ee21;border-color:#22d3ee75}.action.danger[data-v-b91796ff]{color:#f87171;border-color:#ef444466}.action[data-v-b91796ff]:disabled{opacity:.42;cursor:not-allowed}.form-panel[data-v-5413c956]{background:#22c55e14;border:1px solid #22c55e4d;border-radius:4px;flex-shrink:0;margin-top:.5rem;padding:.6rem .75rem}.panel-header[data-v-5413c956]{color:#22c55e;align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.header-icon[data-v-5413c956]{font-size:.9rem}.header-count[data-v-5413c956]{color:var(--text-muted,#94a3b8);margin-left:auto;font-size:.75rem;font-weight:400}.form-body[data-v-5413c956]{flex-direction:column;gap:.5rem;margin-bottom:.6rem;display:flex}.form-field[data-v-5413c956]{flex-direction:column;gap:.2rem;display:flex}.field-label[data-v-5413c956]{color:var(--text-secondary,#cbd5e1);font-size:.75rem}.field-unit[data-v-5413c956]{color:var(--text-muted,#94a3b8)}.required-mark[data-v-5413c956]{color:#ef4444;margin-left:.15rem}.field-input[data-v-5413c956]{background:var(--bg-elevated,#1e293b);border:1px solid var(--border,#334155);color:var(--text-primary,#e2e8f0);border-radius:4px;padding:.35rem .5rem;font-family:inherit;font-size:.8rem}.field-input[data-v-5413c956]:focus{border-color:#22c55e;outline:none}.panel-actions[data-v-5413c956]{justify-content:flex-end;display:flex}.btn-submit[data-v-5413c956]{cursor:pointer;color:#fff;background:#22c55e;border:none;border-radius:4px;padding:.4rem 1rem;font-size:.8rem;font-weight:500;transition:all .15s}.btn-submit[data-v-5413c956]:hover:not(:disabled){background:#16a34a}.btn-submit[data-v-5413c956]:disabled{opacity:.5;cursor:not-allowed}.chat-panel[data-v-7cc66dbe]{flex-direction:column;flex:1;min-height:0;display:flex}.messages[data-v-7cc66dbe]{flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:.85rem;display:flex;overflow-y:auto}.empty-state[data-v-7cc66dbe]{min-height:260px;color:var(--text-muted,#94a3b8);text-align:center;background:#0f172a6b;border:1px dashed #94a3b838;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.7rem;padding:1.4rem;display:flex}.empty-mark[data-v-7cc66dbe]{width:48px;height:48px;color:var(--accent,#22d3ee);background:#22d3ee14;border:1px solid #22d3ee4d;border-radius:8px;place-items:center;display:grid}.empty-state strong[data-v-7cc66dbe]{color:var(--text-primary,#e2e8f0);font-size:.95rem}.empty-state p[data-v-7cc66dbe]{max-width:330px;color:var(--text-secondary,#cbd5e1);margin:0;font-size:.76rem;line-height:1.6}.example-strip[data-v-7cc66dbe]{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.example-strip span[data-v-7cc66dbe]{color:var(--text-muted,#94a3b8);background:#02061773;border:1px solid #94a3b82e;border-radius:6px;padding:.28rem .45rem;font-size:.68rem}.message[data-v-7cc66dbe]{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:.55rem;max-width:100%;display:grid}.msg-user[data-v-7cc66dbe]{grid-template-columns:minmax(0,1fr) 28px}.msg-user .message-avatar[data-v-7cc66dbe]{grid-area:1/2}.msg-user .message-main[data-v-7cc66dbe]{grid-area:1/1}.message-avatar[data-v-7cc66dbe]{width:28px;height:28px;color:var(--text-secondary,#cbd5e1);background:#0f172acc;border:1px solid #94a3b82e;border-radius:7px;place-items:center;font-size:.68rem;font-weight:800;display:grid}.msg-assistant .message-avatar[data-v-7cc66dbe]{color:var(--accent,#22d3ee);background:#22d3ee14;border-color:#22d3ee47}.message-main[data-v-7cc66dbe]{min-width:0}.msg-meta[data-v-7cc66dbe]{color:var(--text-muted,#94a3b8);align-items:center;gap:.45rem;margin-bottom:.28rem;font-size:.66rem;display:flex}.msg-user .msg-meta[data-v-7cc66dbe]{justify-content:flex-end}.msg-part[data-v-7cc66dbe]{color:var(--text-secondary,#cbd5e1);background:#0f172aa6;border:1px solid #94a3b829;border-radius:5px;padding:.1rem .35rem}.msg-content[data-v-7cc66dbe]{background:#0f172ab8;border:1px solid #94a3b829;border-radius:8px;flex-direction:column;gap:.55rem;min-width:0;padding:.65rem;display:flex}.msg-user .msg-content[data-v-7cc66dbe]{background:#22d3ee14;border-color:#22d3ee4d}.is-error .msg-content[data-v-7cc66dbe]{background:#ef444414;border-color:#ef444459}.user-context[data-v-7cc66dbe]{color:var(--text-muted,#94a3b8);gap:.25rem;font-size:.68rem;display:grid}.user-context code[data-v-7cc66dbe]{max-height:80px;color:var(--text-secondary,#cbd5e1);font-family:var(--font-mono,monospace);background:#02061773;border-radius:5px;padding:.35rem;font-size:.66rem;overflow:auto}.msg-text[data-v-7cc66dbe]{color:var(--text-primary,#e2e8f0);white-space:pre-wrap;word-break:break-word;align-items:center;gap:.45rem;font-size:.8rem;line-height:1.55;display:flex}.spin[data-v-7cc66dbe]{color:var(--accent,#22d3ee);flex:none;animation:.85s linear infinite spin-7cc66dbe}@keyframes spin-7cc66dbe{to{transform:rotate(360deg)}}.composer[data-v-7cc66dbe]{background:#08111ffa;border-top:1px solid #94a3b829;flex-direction:column;flex:none;gap:.5rem;padding:.7rem;display:flex}.composer-input[data-v-7cc66dbe]{box-sizing:border-box;resize:vertical;width:100%;min-height:78px;max-height:140px;color:var(--text-primary,#e2e8f0);font:inherit;background:#0f172ad9;border:1px solid #94a3b833;border-radius:8px;outline:none;padding:.65rem .75rem;font-size:.78rem;line-height:1.5}.composer-input[data-v-7cc66dbe]:focus{border-color:#22d3ee8c;box-shadow:0 0 0 2px #22d3ee14}.composer-input[data-v-7cc66dbe]:disabled{opacity:.62;cursor:not-allowed}.composer-footer[data-v-7cc66dbe]{justify-content:space-between;align-items:center;gap:.65rem;display:flex}.composer-hint[data-v-7cc66dbe]{min-width:0;color:var(--text-muted,#94a3b8);align-items:center;gap:.35rem;font-size:.68rem;display:flex}.composer-btn[data-v-7cc66dbe]{min-width:76px;height:30px;color:var(--accent,#22d3ee);cursor:pointer;background:#22d3ee21;border:1px solid #22d3ee73;border-radius:7px;justify-content:center;align-items:center;gap:.35rem;font-size:.74rem;font-weight:800;display:inline-flex}.composer-btn[data-v-7cc66dbe]:hover:not(:disabled){background:#22d3ee33}.composer-btn.cancel[data-v-7cc66dbe]{color:#f87171;background:#ef44441a;border-color:#ef44447a}.composer-btn[data-v-7cc66dbe]:disabled{opacity:.45;cursor:not-allowed}.agent-panel[data-v-7490bd2d]{height:100%;min-height:0;color:var(--text-primary,#e2e8f0);background:#08111f;flex-direction:column;display:flex}.agent-topbar[data-v-7490bd2d]{background:linear-gradient(#0f172afa,#08111ffa);border-bottom:1px solid #94a3b829;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;min-height:58px;padding:.7rem .8rem;display:grid}.agent-title[data-v-7490bd2d]{align-items:center;gap:.6rem;min-width:0;display:flex}.agent-mark[data-v-7490bd2d]{width:32px;height:32px;color:var(--accent,#22d3ee);background:#22d3ee1a;border:1px solid #22d3ee52;border-radius:8px;flex:none;place-items:center;display:grid}.agent-copy[data-v-7490bd2d]{flex-direction:column;gap:.12rem;min-width:0;display:flex}.agent-copy strong[data-v-7490bd2d]{color:var(--text-primary,#e2e8f0);font-size:.86rem;line-height:1.1}.agent-copy span[data-v-7490bd2d]{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-muted,#94a3b8);font-size:.68rem;overflow:hidden}.agent-status[data-v-7490bd2d]{max-width:150px;height:28px;color:var(--text-secondary,#cbd5e1);white-space:nowrap;background:#0f172aad;border:1px solid #94a3b829;border-radius:6px;align-items:center;gap:.35rem;padding:0 .5rem;font-size:.68rem;display:inline-flex}.agent-status small[data-v-7490bd2d]{text-overflow:ellipsis;max-width:72px;color:var(--text-muted,#94a3b8);font-family:var(--font-mono,monospace);overflow:hidden}.status-dot[data-v-7490bd2d]{background:var(--status-tone);width:7px;height:7px;box-shadow:0 0 10px color-mix(in srgb, var(--status-tone) 70%, transparent);border-radius:50%}.icon-btn[data-v-7490bd2d]{width:30px;height:30px;color:var(--text-muted,#94a3b8);cursor:pointer;background:#0f172ab8;border:1px solid #94a3b82e;border-radius:6px;place-items:center;display:grid}.icon-btn[data-v-7490bd2d]:hover{color:var(--accent,#22d3ee);background:#22d3ee14;border-color:#22d3ee61}.settings-modal[data-v-7490bd2d]{z-index:1000;background:#0206179e;place-items:center;display:grid;position:fixed;inset:0}.settings-card[data-v-7490bd2d]{background:#0f172a;border:1px solid #94a3b838;border-radius:8px;flex-direction:column;gap:.75rem;width:min(360px,100vw - 2rem);padding:1rem;display:flex;box-shadow:0 18px 50px #0000006b}.settings-head[data-v-7490bd2d]{color:var(--accent,#22d3ee);align-items:center;gap:.5rem;display:flex}.settings-head h3[data-v-7490bd2d]{color:var(--text-primary,#e2e8f0);margin:0;font-size:.92rem}.settings-card label[data-v-7490bd2d]{color:var(--text-muted,#94a3b8);font-size:.72rem}.settings-input[data-v-7490bd2d]{box-sizing:border-box;width:100%;color:var(--text-primary,#e2e8f0);font-family:var(--font-mono,monospace);background:#08111f;border:1px solid #94a3b838;border-radius:6px;outline:none;padding:.6rem .7rem;font-size:.78rem}.settings-input[data-v-7490bd2d]:focus{border-color:#22d3ee99}.settings-actions[data-v-7490bd2d]{justify-content:flex-end;gap:.5rem;display:flex}.settings-actions button[data-v-7490bd2d]{color:var(--text-secondary,#cbd5e1);cursor:pointer;background:#111c2e;border:1px solid #94a3b838;border-radius:6px;padding:.45rem .8rem;font-size:.75rem}.settings-actions .btn-primary[data-v-7490bd2d]{color:var(--accent,#22d3ee);background:#22d3ee1f;border-color:#22d3ee80}.agent-body[data-v-7490bd2d]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.editor-container[data-v-269654d2]{flex:1;min-height:0;position:relative}.gcode-textarea-fallback[data-v-269654d2]{resize:none;width:100%;height:100%;min-height:0;color:var(--text-primary);font-family:var(--font-mono);white-space:pre;background:#0b1121;border:0;outline:none;padding:.75rem .75rem 7.5rem;font-size:.82rem;line-height:1.55;display:block;overflow:auto}.gcode-assist-panel[data-v-269654d2]{z-index:12;background:#0f172af0;border:1px solid #22d3ee47;border-radius:8px;position:absolute;bottom:.75rem;left:.75rem;right:.75rem;overflow:hidden;box-shadow:0 14px 32px #00000052}.assist-head[data-v-269654d2]{min-width:0;color:var(--text-muted);border-bottom:1px solid #94a3b829;grid-template-columns:auto auto minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.45rem .6rem;font-size:.68rem;display:grid}.assist-head strong[data-v-269654d2]{color:var(--accent);font-family:var(--font-mono);font-size:.78rem}.assist-head>span[data-v-269654d2]:first-child{display:none}.assist-mode-label[data-v-269654d2]{display:inline}.assist-head em[data-v-269654d2]{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);font-style:normal;overflow:hidden}.docs-toggle-btn[data-v-269654d2],.monaco-mode-btn[data-v-269654d2]{border:1px solid var(--border);background:var(--bg-base);min-width:58px;height:24px;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);border-radius:6px;padding:0 .45rem;font-size:.62rem;font-weight:800;line-height:1}.docs-toggle-btn[data-v-269654d2]{min-width:46px}.docs-toggle-btn[data-v-269654d2]:hover,.docs-toggle-btn.active[data-v-269654d2],.monaco-mode-btn[data-v-269654d2]:hover:not(:disabled),.monaco-mode-btn.active[data-v-269654d2]{color:var(--accent);background:#22d3ee14;border-color:#22d3ee99}.monaco-mode-btn[data-v-269654d2]:disabled{opacity:.5;cursor:not-allowed}.gcode-docs-panel[data-v-269654d2]{z-index:18;background:#0f172afa;border:1px solid #22d3ee52;border-radius:8px;flex-direction:column;width:min(360px,100% - 1.5rem);min-height:220px;display:flex;position:absolute;top:.75rem;bottom:7.4rem;right:.75rem;overflow:hidden;box-shadow:0 20px 48px #0000006b}.docs-panel-head[data-v-269654d2]{border-bottom:1px solid #94a3b829;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem;display:flex}.docs-panel-head div[data-v-269654d2]{flex-direction:column;gap:.1rem;min-width:0;display:flex}.docs-panel-head strong[data-v-269654d2]{color:var(--text-primary);font-size:.82rem}.docs-panel-head span[data-v-269654d2]{color:var(--text-muted);font-size:.66rem}.docs-panel-head button[data-v-269654d2]{border:1px solid var(--border);background:var(--bg-base);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:6px;flex-shrink:0;font-size:1rem;line-height:1}.docs-panel-head button[data-v-269654d2]:hover{color:var(--accent);border-color:#22d3ee99}.docs-panel-body[data-v-269654d2]{min-height:0;padding:.75rem;overflow:auto}.docs-section[data-v-269654d2]{margin-bottom:.85rem}.docs-section[data-v-269654d2]:last-child{margin-bottom:0}.docs-section h3[data-v-269654d2]{color:var(--accent);margin:0 0 .45rem;font-size:.72rem}.docs-section dl[data-v-269654d2]{grid-template-columns:minmax(4.8rem,auto) minmax(0,1fr);gap:.35rem .6rem;margin:0;display:grid}.docs-section dt[data-v-269654d2]{color:var(--text-primary);font-family:var(--font-mono);font-size:.72rem;font-weight:800}.docs-section dd[data-v-269654d2]{min-width:0;color:var(--text-secondary);margin:0;font-size:.7rem;line-height:1.45}.docs-section pre[data-v-269654d2]{border:1px solid var(--border);background:var(--bg-base);color:var(--text-primary);font-family:var(--font-mono);border-radius:6px;margin:0;padding:.65rem;font-size:.72rem;line-height:1.5;overflow:auto}.assist-list[data-v-269654d2]{gap:.35rem;padding:.45rem .5rem;display:flex;overflow-x:auto}.assist-chip[data-v-269654d2]{border:1px solid var(--border);background:var(--bg-base);min-width:82px;max-width:150px;color:var(--text-secondary);cursor:pointer;text-align:left;border-radius:6px;flex-direction:column;flex:none;align-items:flex-start;gap:.15rem;padding:.35rem .45rem;display:flex}.assist-chip[data-v-269654d2]:hover,.assist-chip.active[data-v-269654d2]{color:var(--accent);background:#22d3ee14;border-color:#22d3ee99}.assist-chip span[data-v-269654d2]{font-family:var(--font-mono);font-size:.76rem;font-weight:800}.assist-chip small[data-v-269654d2]{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-muted);font-size:.62rem;overflow:hidden}[data-v-269654d2] .active-gcode-line{border-left:3px solid #22d3ee;background-color:#22d3ee1f!important}.editor-panel[data-v-6503de66]{width:var(--editor-panel-width,450px);flex:0 0 var(--editor-panel-width,450px);background-color:var(--bg-base);border-left:1px solid var(--border);flex-direction:column;min-width:340px;max-width:820px;height:100%;display:flex;position:relative}.editor-panel.is-fullscreen[data-v-6503de66]{z-index:1000;width:100vw;min-width:0;max-width:none;height:100vh;box-shadow:0 0 0 1px var(--border), 0 24px 80px #0000008c;border-left:0;flex:none;position:fixed;inset:0}.tabs[data-v-6503de66]{background-color:var(--bg-surface);border-bottom:1px solid var(--border);align-items:center;min-height:45px;padding-right:.45rem;display:flex;overflow:hidden}.project-tab-strip[data-v-6503de66]{flex:1;align-items:stretch;min-width:0;display:flex;overflow:auto hidden}.project-tab-strip[data-v-6503de66]::-webkit-scrollbar{height:3px}.tab[data-v-6503de66]{min-width:0;font-size:.75rem;font-family:var(--font-mono);color:var(--text-muted);cursor:pointer;border:0;border-right:1px solid var(--border);background:0 0;flex-shrink:0;align-items:center;gap:.5rem;padding:.75rem .9rem;transition:color .2s;display:flex}.tab[data-v-6503de66]:hover{color:var(--text-secondary)}.tab.active[data-v-6503de66]{background-color:var(--bg-base);color:var(--text-primary);border-top:2px solid var(--accent)}.project-tab[data-v-6503de66]{max-width:180px}.code-icon[data-v-6503de66],.agent-icon[data-v-6503de66]{letter-spacing:0;color:var(--accent);font-size:.65rem;font-weight:800}.tab-name[data-v-6503de66]{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:170px;overflow:hidden}.tab .dot[data-v-6503de66]{background:var(--success);border-radius:50%;flex-shrink:0;width:6px;height:6px}.tab .dot.has-errors[data-v-6503de66]{background:#ef4444}.tab .dot.has-warnings[data-v-6503de66]{background:#f59e0b}.tab-count[data-v-6503de66]{min-width:18px;height:18px;color:var(--accent);font-size:.62rem;font-family:var(--font-mono);background:#22d3ee1a;border-radius:9px;flex-shrink:0;place-items:center;display:grid}.add-tab[data-v-6503de66]{border:1px solid var(--border);background:var(--bg-base);width:30px;height:30px;color:var(--text-muted);cursor:pointer;font-size:.62rem;font-family:var(--font-mono);border-radius:6px;flex-shrink:0;margin-left:.3rem;padding:0;font-weight:800;line-height:1}.add-tab.icon-only[data-v-6503de66]{place-items:center;font-size:.9rem;display:grid}.add-tab[data-v-6503de66]:hover{color:var(--accent);border-color:var(--accent)}.file-workbench[data-v-6503de66]{border-bottom:1px solid var(--border);background:var(--bg-surface);flex-direction:column;gap:.6rem;max-height:150px;padding:.65rem;display:flex;overflow:visible}.file-section-head[data-v-6503de66],.tree-row[data-v-6503de66]{align-items:center;display:flex}.file-section-head[data-v-6503de66]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;font-size:.68rem}.run-count[data-v-6503de66],.run-status[data-v-6503de66]{color:var(--accent);font-family:var(--font-mono);font-size:.68rem}.current-file-head[data-v-6503de66],.folder-title-row[data-v-6503de66],.folder-file-chip[data-v-6503de66]{align-items:center;gap:.45rem;min-width:0;display:flex}.current-file-head[data-v-6503de66],.folder-file-head[data-v-6503de66]{min-width:0}.current-file-head[data-v-6503de66]{justify-content:flex-start}.file-section-label[data-v-6503de66]{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.68rem}.current-file-name[data-v-6503de66],.folder-title[data-v-6503de66]{min-width:0;color:var(--text-secondary);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.focus-btn[data-v-6503de66]{border:1px solid var(--border-strong);background:var(--bg-base);min-height:30px;color:var(--text-secondary);cursor:pointer;font-size:.7rem;font-weight:800;font-family:var(--font-mono);border-radius:6px;flex-shrink:0;margin-left:auto;padding:.35rem .65rem;line-height:1;transition:all .15s}.focus-btn[data-v-6503de66]:hover,.focus-btn.active[data-v-6503de66]{color:var(--accent);background:#22d3ee14;border-color:#22d3ee99}.editor-panel.is-fullscreen .tabs[data-v-6503de66]{min-height:46px}.editor-panel.is-fullscreen .file-workbench[data-v-6503de66]{max-height:122px}.editor-panel.is-fullscreen .editor-container[data-v-6503de66]{min-height:0}.folder-file-head[data-v-6503de66]{flex-direction:column;gap:.55rem;display:flex}.folder-file-list[data-v-6503de66]{gap:.4rem;padding-bottom:.1rem;display:flex;overflow-x:auto}.folder-file-chip[data-v-6503de66]{border:1px solid var(--border);background:var(--bg-base);max-width:170px;color:var(--text-secondary);cursor:pointer;border-radius:6px;flex:none;padding:.35rem .45rem}.folder-file-chip[data-v-6503de66]:hover,.folder-file-chip.running[data-v-6503de66]{border-color:var(--accent);color:var(--text-primary);background:#22d3ee0f}.folder-add-file-btn[data-v-6503de66]{background:var(--accent-soft);min-height:28px;color:var(--accent);cursor:pointer;border:1px solid #22d3ee61;border-radius:6px;flex-shrink:0;align-items:center;gap:.4rem;padding:.25rem .55rem;font-size:.72rem;font-weight:700;display:flex}.folder-add-file-btn[data-v-6503de66]:hover{border-color:var(--accent);background:#22d3ee38}.folder-add-file-btn .node-icon[data-v-6503de66]{width:24px;height:18px;color:var(--accent);background:#0f172a73}.project-tree[data-v-6503de66]{flex-direction:column;gap:.35rem;display:flex}.folder-node[data-v-6503de66]{border:1px solid var(--border);background:#0f172a6b;border-radius:7px}.folder-node.active[data-v-6503de66]{border-color:#22d3ee8c}.tree-row[data-v-6503de66]{background:var(--bg-base);border-radius:6px;gap:.45rem;padding:.35rem}.folder-row[data-v-6503de66]{background:0 0}.file-row[data-v-6503de66]{border:1px solid var(--border)}.folder-children[data-v-6503de66]{flex-direction:column;gap:.3rem;padding:0 .35rem .35rem 1.45rem;display:flex}.file-row.active[data-v-6503de66]{background:#22d3ee0f;border-color:#22d3ee99}.file-row.running[data-v-6503de66]{background:#f59e0b14;border-color:#f59e0bbf}.node-main[data-v-6503de66]{min-width:0;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:.45rem;padding:0;display:flex}.disclosure[data-v-6503de66]{width:22px;height:22px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px}.node-icon[data-v-6503de66]{background:var(--bg-elevated);width:28px;height:20px;color:var(--text-muted);font-size:.6rem;font-family:var(--font-mono);border-radius:5px;flex-shrink:0;place-items:center;display:grid}.file-name[data-v-6503de66]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);font-size:.72rem;overflow:hidden}.issue-count[data-v-6503de66],.item-count[data-v-6503de66]{color:#f59e0b;background:#f59e0b24;border-radius:9px;place-items:center;min-width:18px;height:18px;margin-left:auto;font-size:.62rem;display:grid}.item-count[data-v-6503de66]{color:var(--accent);background:#22d3ee1a}.row-actions[data-v-6503de66]{align-items:center;gap:.25rem;display:flex}.tiny-btn[data-v-6503de66]{border:1px solid var(--border);background:var(--bg-elevated);width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:5px;line-height:1;transition:all .15s}.tiny-btn[data-v-6503de66]:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.tiny-btn[data-v-6503de66]:disabled{opacity:.35;cursor:not-allowed}.tiny-btn.danger[data-v-6503de66]:hover:not(:disabled){color:#ef4444;border-color:#ef444499}.empty-folder[data-v-6503de66]{border:1px dashed var(--border);color:var(--text-muted);text-align:center;border-radius:6px;padding:.45rem;font-size:.7rem}.run-status[data-v-6503de66]{background:var(--accent-soft);border:1px solid #22d3ee59;border-radius:6px;padding:.45rem .5rem}.context-menu[data-v-6503de66]{z-index:80;border:1px solid var(--border);background:var(--bg-elevated);border-radius:6px;min-width:96px;padding:.25rem;position:fixed;box-shadow:0 10px 24px #00000059}.context-menu button[data-v-6503de66]{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;padding:.45rem .55rem;font-size:.72rem}.context-menu button[data-v-6503de66]:hover{color:var(--accent);background:#22d3ee14}.context-menu button.danger[data-v-6503de66]:hover:not(:disabled){color:#ef4444;background:#ef444414}.context-menu button[data-v-6503de66]:disabled{opacity:.35;cursor:not-allowed}.name-dialog-backdrop[data-v-6503de66]{z-index:90;background:#0206178c;place-items:center;display:grid;position:absolute;inset:0}.name-dialog[data-v-6503de66]{border:1px solid var(--border);background:var(--bg-elevated);border-radius:8px;width:min(320px,100% - 2rem);padding:.9rem;box-shadow:0 18px 40px #00000073}.name-dialog-title[data-v-6503de66]{color:var(--text-secondary);margin-bottom:.6rem;font-size:.78rem}.name-dialog-input[data-v-6503de66]{box-sizing:border-box;border:1px solid var(--border);background:var(--bg-base);width:100%;color:var(--text-primary);border-radius:6px;outline:none;padding:.55rem .65rem;font-size:.8rem}.name-dialog-input[data-v-6503de66]:focus{border-color:var(--accent)}.name-dialog-actions[data-v-6503de66]{justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}.name-dialog-btn[data-v-6503de66]{border:1px solid var(--border);background:var(--bg-base);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:.4rem .75rem;font-size:.72rem}.name-dialog-btn.primary[data-v-6503de66]{color:var(--accent);border-color:#22d3ee73}.editor-container[data-v-6503de66]{flex:1;min-height:0;position:relative}.folder-empty-panel[data-v-6503de66]{min-height:0;color:var(--text-muted);background:var(--bg-base);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.55rem;font-size:.8rem;display:flex}.folder-empty-panel strong[data-v-6503de66]{color:var(--text-secondary);font-size:.9rem}.error-bar[data-v-6503de66]{border-top:1px solid var(--border);background-color:var(--bg-surface);max-height:100px;padding:.5rem .75rem;overflow-y:auto}.error-item[data-v-6503de66]{font-size:.72rem;font-family:var(--font-mono);align-items:center;gap:.5rem;padding:.2rem 0;display:flex}.error-item.error[data-v-6503de66]{color:#ef4444}.error-item.warning[data-v-6503de66]{color:#f59e0b}.error-icon[data-v-6503de66]{text-align:center;width:1rem;font-size:.65rem}.error-msg[data-v-6503de66]{color:var(--text-secondary)}.error-more[data-v-6503de66]{color:var(--text-muted);padding-top:.25rem;font-size:.7rem}.dashboard-layout[data-v-de11e85e]{background-color:var(--bg-base);width:100vw;height:100vh;color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.top-nav[data-v-de11e85e]{background-color:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:1.5rem;height:56px;padding:0 1.25rem;display:flex}.brand[data-v-de11e85e]{align-items:center;gap:.6rem;display:flex}.logo-box[data-v-de11e85e]{background:linear-gradient(135deg, var(--accent), #06b6d4);color:#fff;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.9rem;display:flex;box-shadow:0 2px 8px #22d3ee4d}.brand h1[data-v-de11e85e]{letter-spacing:1.5px;margin:0;font-size:1.1rem;font-weight:700}.brand h1 span[data-v-de11e85e]{color:var(--text-secondary);font-weight:300}.file-info[data-v-de11e85e]{flex-direction:column;display:flex}.file-info .filename[data-v-de11e85e]{font-size:.85rem;font-weight:600}.file-info .subtext[data-v-de11e85e]{color:var(--text-muted);font-size:.6rem}.center-toolbar[data-v-de11e85e]{flex:1;justify-content:center;gap:.75rem;display:flex}.badge[data-v-de11e85e]{border-radius:16px;align-items:center;gap:.4rem;padding:.3rem .8rem;font-size:.7rem;font-weight:600;display:flex}.badge.cyan[data-v-de11e85e]{background-color:var(--accent-soft);color:var(--accent);border:1px solid #22d3ee4d}.badge.outline[data-v-de11e85e]{color:var(--text-muted);border:1px solid var(--border-strong);font-family:var(--font-mono);background-color:#0000}.badge.green[data-v-de11e85e]{color:#10b981;background-color:#10b9811a;border:1px solid #10b9814d}.badge.blue[data-v-de11e85e]{color:#60a5fa;background-color:#3b82f61a;border:1px solid #3b82f64d}.status-pulse[data-v-de11e85e]{background-color:#10b981;border-radius:50%;width:6px;height:6px;animation:1.5s ease-in-out infinite pulse-green-de11e85e}@keyframes pulse-green-de11e85e{0%,to{opacity:1;box-shadow:0 0 #10b98166}50%{opacity:.7;box-shadow:0 0 6px 2px #10b98133}}.right-actions[data-v-de11e85e]{align-items:center;gap:.6rem;display:flex}.action-btn[data-v-de11e85e]{cursor:pointer;border:1px solid #0000;border-radius:16px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.action-btn.secondary[data-v-de11e85e]{border-color:var(--border-strong);color:var(--text-primary);background-color:#0000}.action-btn.secondary[data-v-de11e85e]:hover{background-color:var(--bg-elevated);border-color:var(--accent);color:var(--accent)}.action-btn.primary[data-v-de11e85e]{background:linear-gradient(135deg, var(--accent), #06b6d4);color:#0b1121;box-shadow:0 2px 10px #22d3ee4d}.action-btn.primary[data-v-de11e85e]:hover{transform:translateY(-1px);box-shadow:0 4px 14px #22d3ee66}.dashboard-main[data-v-de11e85e]{flex:1;display:flex;overflow:hidden}.panel-resize-handle[data-v-de11e85e]{cursor:col-resize;background:var(--bg-base);z-index:20;touch-action:none;flex:0 0 8px;width:8px;transition:background .15s;position:relative}.panel-resize-handle[data-v-de11e85e]:before{content:"";background:var(--border);width:2px;transition:background .15s,box-shadow .15s;position:absolute;top:0;bottom:0;left:3px}.panel-resize-handle[data-v-de11e85e]:hover,.panel-resize-handle[data-v-de11e85e]:active{background:#22d3ee0d}.panel-resize-handle[data-v-de11e85e]:hover:before,.panel-resize-handle[data-v-de11e85e]:active:before{background:var(--accent);box-shadow:0 0 12px #22d3ee73}body.is-panel-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.center-stage[data-v-de11e85e]{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.center-stage.is-scene-fullscreen[data-v-de11e85e]{z-index:950;background:var(--bg-base);box-shadow:0 0 0 1px var(--border), 0 24px 80px #0000008c;position:fixed;inset:0}.overlay-toolbar[data-v-de11e85e]{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);background-color:#111827e6;border-radius:8px;gap:1rem;padding:.3rem;display:flex;position:absolute;top:.75rem;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000080}.render-modes[data-v-de11e85e]{gap:.2rem;display:flex}.mode-btn[data-v-de11e85e]{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.7rem;transition:all .15s;display:flex}.mode-btn[data-v-de11e85e]:hover{color:var(--text-secondary);background-color:var(--bg-elevated)}.mode-btn.active[data-v-de11e85e]{background-color:var(--bg-elevated);color:var(--accent)}.fullscreen-toggle[data-v-de11e85e]{border-left:1px solid var(--border);margin-left:.2rem}.center-stage.is-scene-fullscreen .overlay-toolbar[data-v-de11e85e]{top:1rem}.center-stage.is-scene-fullscreen .scene-wrapper[data-v-de11e85e]{min-height:0}.scene-wrapper[data-v-de11e85e]{flex:1;position:relative}[data-v-de11e85e] .canvas-container{border:none!important;border-radius:0!important}.shortcut-hint[data-v-de11e85e]{color:var(--text-muted);opacity:.4;pointer-events:none;z-index:5;font-size:.6rem;position:fixed;bottom:68px;left:50%;transform:translate(-50%)}.shortcut-hint span[data-v-de11e85e]{background-color:var(--bg-elevated);font-family:var(--font-mono);border:1px solid var(--border);border-radius:3px;margin:0 .1rem;padding:.1rem .3rem;display:inline-block}.run-choice-backdrop[data-v-de11e85e]{z-index:80;background:#0206179e;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.run-choice-dialog[data-v-de11e85e]{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;width:min(460px,100%);padding:1.25rem;box-shadow:0 24px 60px #0000006b}.run-choice-dialog h2[data-v-de11e85e]{color:var(--text-primary);margin:0 0 .55rem;font-size:1rem}.run-choice-dialog p[data-v-de11e85e]{color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.run-choice-actions[data-v-de11e85e]{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.run-choice-actions .action-btn[data-v-de11e85e]{min-height:34px}.action-btn.ghost[data-v-de11e85e]{border-color:var(--border);color:var(--text-secondary);background:0 0}
