:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}a:hover{background-color:#00bd7e33}body{display:flex;place-items:center}#app{display:grid;grid-template-columns:1fr 1fr}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;width:100%;overflow:hidden;font-family:Arial,sans-serif;background:linear-gradient(135deg,#4caf50,#2196f3)}#app{height:100vh;width:100vw;position:fixed;top:0;left:0}.canvas-app{--primary-green: #4CAF50;--primary-blue: #2196F3;--accent-orange: #FF9800;--accent-purple: #9C27B0;--dark-gray: #4A5568;--light-gray: #F7FAFC}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#4caf50;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#45a049}button:focus,input:focus,select:focus{outline:2px solid #4CAF50;outline-offset:2px}@keyframes canvas-bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.canvas-animation{animation:canvas-bounce 2s infinite}.code-editor-container[data-v-96a24797]{display:flex;flex-direction:column;height:100%;background:#f8f9fa;border-radius:8px;overflow:hidden;transition:all .3s ease}.editor-header[data-v-96a24797]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-bottom:1px solid #e9ecef}.editor-header h3[data-v-96a24797]{margin:0;font-size:14px;font-weight:600;color:#495057}.editor-controls[data-v-96a24797]{display:flex;gap:8px}.run-btn[data-v-96a24797]{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.run-btn[data-v-96a24797]:hover:not(:disabled){background:#218838}.run-btn[data-v-96a24797]:disabled{background:#6c757d;cursor:not-allowed}.editor-wrapper[data-v-96a24797]{position:relative;flex:1;overflow:hidden}.editor-container[data-v-96a24797]{width:100%;height:100%}[data-v-96a24797] .cm-editor{height:100%;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.5}[data-v-96a24797] .cm-focused{outline:none}[data-v-96a24797] .cm-scroller{padding:16px;padding-left:0!important}[data-v-96a24797] .cm-content{min-height:100%;padding:0;padding-left:16px!important}[data-v-96a24797] .cm-line{padding-left:4px}[data-v-96a24797] .cm-gutters{background:#f8f9fa!important;z-index:200!important}[data-v-96a24797] .cm-gutter,[data-v-96a24797] .cm-lineNumbers .cm-gutterElement{background:#f8f9fa!important}[data-v-96a24797] .cm-error-line{background-color:#ffebee!important;border-left:4px solid #f44336!important;cursor:pointer!important}[data-v-96a24797] .cm-executing-line{background-color:#e8f5e8!important;border-left:4px solid #4caf50!important;animation:executionPulse-96a24797 1s ease-in-out infinite alternate}@keyframes executionPulse-96a24797{0%{background-color:#e8f5e8;box-shadow:0 0 5px #4caf504d}to{background-color:#d4edda;box-shadow:0 0 10px #4caf5099}}[data-v-96a24797] .cm-focused .cm-selectionBackground{background-color:#ffebee!important}.editor-options-overlay[data-v-96a24797]{position:absolute;top:12px;right:12px;z-index:100}.options-btn[data-v-96a24797]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ffffffe6;border:1px solid rgba(222,226,230,.8);border-radius:6px;color:#6c757d;cursor:pointer;transition:all .2s ease;opacity:.6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px #0000001a}.options-btn[data-v-96a24797]:hover{opacity:1;background:#f8f9faf2;border-color:#adb5bd;color:#495057;transform:scale(1.05)}.options-btn.active[data-v-96a24797]{opacity:1;background:#e9eceff2;border-color:#adb5bd;color:#495057}.editor-options-dropdown[data-v-96a24797]{position:absolute;top:100%;right:0;margin-top:8px;min-width:220px;max-width:280px;max-height:300px;background:#fffffff5;border:1px solid rgba(222,226,230,.8);border-radius:8px;box-shadow:0 8px 24px #00000026,0 4px 8px #0000001a;z-index:1000;font-size:13px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;overflow-x:hidden}@media (max-height: 600px){.editor-options-dropdown[data-v-96a24797]{max-height:300px}}@media (max-height: 500px){.editor-options-dropdown[data-v-96a24797]{max-height:250px}}.option-group[data-v-96a24797]{padding:8px 0}.option-separator[data-v-96a24797]{height:1px;background:#e9ecef;margin:4px 0}.option-label-header[data-v-96a24797]{padding:6px 16px 4px;font-weight:600;color:#6c757d;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.option-item[data-v-96a24797]{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;cursor:pointer;transition:background-color .15s}.option-item[data-v-96a24797]:hover{background:#f8f9fa}.option-label[data-v-96a24797]{color:#495057;font-weight:400}.option-indicator[data-v-96a24797]{color:#28a745;font-weight:600;font-size:14px;width:16px;text-align:center}.code-editor-container.zoomed[data-v-96a24797],.editor-wrapper.zoomed[data-v-96a24797],.editor-container.zoomed[data-v-96a24797],.editor-container.zoomed[data-v-96a24797] .cm-editor{height:100%}.editor-container.zoomed[data-v-96a24797] .cm-scroller{padding:24px}.editor-container.drag-over[data-v-96a24797]{outline:3px dashed #28a745;outline-offset:-8px;background-color:#28a7450d;transition:all .2s ease}.modal-overlay[data-v-96a24797]{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn-96a24797 .2s ease}@keyframes fadeIn-96a24797{0%{opacity:0}to{opacity:1}}.modal-content[data-v-96a24797]{background:#fff;border-radius:12px;padding:32px;max-width:500px;width:90%;box-shadow:0 20px 60px #0000004d;animation:slideUp-96a24797 .3s ease}@keyframes slideUp-96a24797{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h3[data-v-96a24797]{margin:0 0 16px;font-size:20px;font-weight:600;color:#212529}.modal-content p[data-v-96a24797]{margin:0 0 12px;font-size:14px;color:#495057;line-height:1.5}.modal-content p strong[data-v-96a24797]{color:#212529;font-weight:600}.modal-actions[data-v-96a24797]{display:flex;flex-direction:column;gap:10px;margin-top:24px}.modal-btn[data-v-96a24797]{padding:12px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center}.modal-btn-primary[data-v-96a24797]{background:#dc3545;color:#fff}.modal-btn-primary[data-v-96a24797]:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 4px 12px #dc35454d}.modal-btn-secondary[data-v-96a24797]{background:#28a745;color:#fff}.modal-btn-secondary[data-v-96a24797]:hover{background:#218838;transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.modal-btn-cancel[data-v-96a24797]{background:#6c757d;color:#fff}.modal-btn-cancel[data-v-96a24797]:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d4d}.prompt-overlay[data-v-42a00fc0]{position:fixed;inset:0;background-color:#0000000d;display:flex;align-items:center;justify-content:center;z-index:10000}.prompt-modal[data-v-42a00fc0]{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:400px;max-width:90%;overflow:hidden;animation:slideIn-42a00fc0 .2s ease-out;border:1px solid #e0e0e0}@keyframes slideIn-42a00fc0{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.prompt-header[data-v-42a00fc0]{padding:16px 20px;background:#f5f5f5;border-bottom:1px solid #e0e0e0}.prompt-header h3[data-v-42a00fc0]{margin:0;color:#333;font-size:16px;font-weight:600}.prompt-body[data-v-42a00fc0]{padding:20px;background:#fff}.prompt-message[data-v-42a00fc0]{margin:0 0 16px;color:#555;font-size:14px;line-height:1.5}.prompt-input[data-v-42a00fc0]{width:100%;padding:10px 12px;background:#fff;border:1px solid #cccccc;border-radius:4px;color:#333;font-size:14px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;outline:none;transition:border-color .2s}.prompt-input[data-v-42a00fc0]:focus{border-color:#007acc;box-shadow:0 0 0 2px #007acc1a}.prompt-footer[data-v-42a00fc0]{padding:12px 20px;background:#f9f9f9;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end;gap:10px}.btn[data-v-42a00fc0]{padding:8px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;outline:none}.btn-cancel[data-v-42a00fc0]{background:#e0e0e0;color:#555}.btn-cancel[data-v-42a00fc0]:hover{background:#d0d0d0}.btn-cancel[data-v-42a00fc0]:active{background:silver}.btn-submit[data-v-42a00fc0]{background:#007acc;color:#fff}.btn-submit[data-v-42a00fc0]:hover{background:#0098ff}.btn-submit[data-v-42a00fc0]:active{background:#005a9e}.alert-overlay[data-v-fac8cd06]{position:fixed;inset:0;background-color:#0000000d;display:flex;align-items:center;justify-content:center;z-index:10000}.alert-modal[data-v-fac8cd06]{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:400px;max-width:90%;overflow:hidden;animation:slideIn-fac8cd06 .2s ease-out;border:1px solid #e0e0e0}@keyframes slideIn-fac8cd06{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.alert-header[data-v-fac8cd06]{padding:16px 20px;background:#f5f5f5;border-bottom:1px solid #e0e0e0}.alert-header h3[data-v-fac8cd06]{margin:0;color:#333;font-size:16px;font-weight:600}.alert-body[data-v-fac8cd06]{padding:20px;background:#fff}.alert-message[data-v-fac8cd06]{margin:0;color:#555;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.alert-footer[data-v-fac8cd06]{padding:12px 20px;background:#f9f9f9;border-top:1px solid #e0e0e0;display:flex;justify-content:flex-end}.btn[data-v-fac8cd06]{padding:8px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;outline:none}.btn-ok[data-v-fac8cd06]{background:#007acc;color:#fff;min-width:80px}.btn-ok[data-v-fac8cd06]:hover{background:#0098ff}.btn-ok[data-v-fac8cd06]:active{background:#005a9e}.btn-ok[data-v-fac8cd06]:focus{box-shadow:0 0 0 2px #007acc4d}.cls-1[data-v-d7477f69]{fill:#fdfdfd}.cls-3[data-v-d7477f69]{fill:#dec29b}.cls-6[data-v-d7477f69]{fill:#0f0d08}.canvas-editor-view[data-v-d7477f69]{width:100vw;height:100vh;display:flex;flex-direction:column;background:#f5f5f5}.header[data-v-d7477f69]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);box-shadow:0 2px 10px #0000001a;z-index:100}.header-left[data-v-d7477f69]{display:flex;align-items:center;gap:12px;margin-right:10px}.logo[data-v-d7477f69]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px}.header h1[data-v-d7477f69]{color:#2d3748;font-size:24px;font-weight:700;margin:0}.header-right[data-v-d7477f69]{display:flex;align-items:center;gap:24px}.run-btn.header-control[data-v-d7477f69]{background:#10b981;color:#fff;border:2px solid #10B981;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px!important;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.run-btn.header-control[data-v-d7477f69]:hover{background:#059669;border-color:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}button.run-btn.header-control.running[data-v-d7477f69]{background:#ef4444!important;border-color:#ef4444!important}button.run-btn.header-control.running[data-v-d7477f69]:hover{background:#dc2626!important;border-color:#dc2626!important}button.run-btn.header-control.paused[data-v-d7477f69]{background:#f59e0b!important;border-color:#f59e0b!important;animation:pausePulse-d7477f69 2s ease-in-out infinite alternate}button.run-btn.header-control.paused[data-v-d7477f69]:hover{background:#d97706!important;border-color:#d97706!important}@keyframes pausePulse-d7477f69{0%{opacity:1}to{opacity:.7}}.stop-btn.header-control[data-v-d7477f69]{background:#9ca3af;color:#fff;border:2px solid #9CA3AF;padding:8px 12px;border-radius:6px;cursor:not-allowed;display:flex;align-items:center;gap:6px;font-size:14px!important;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #0000001a;opacity:.6}.stop-btn.header-control.enabled[data-v-d7477f69]{background:#dc2626;border-color:#dc2626;cursor:pointer;opacity:1}.stop-btn.header-control.enabled[data-v-d7477f69]:hover{background:#b91c1c;border-color:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.stop-btn.header-control[data-v-d7477f69]:disabled{background:#9ca3af;border-color:#9ca3af;cursor:not-allowed;opacity:.6;transform:none;box-shadow:0 2px 4px #0000001a}.clear-canvas-btn.header-control[data-v-d7477f69]{background:#6b7280;color:#fff;border:none;border:2px solid #6B7280;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px!important;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.clear-canvas-btn.header-control[data-v-d7477f69]:hover{background:#4b5563;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.help-btn[data-v-d7477f69]{background:#4caf50;color:#fff;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.help-btn[data-v-d7477f69]:hover{background:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.main-content[data-v-d7477f69]{flex:1;display:flex;overflow:hidden}.main-content.zoomed[data-v-d7477f69]{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999;background:#fff}.main-content.zoomed .editor-panel[data-v-d7477f69],.main-content.zoomed .canvas-panel[data-v-d7477f69]{height:100vh}.main-content.zoomed .resize-handle[data-v-d7477f69]{display:none}.editor-panel[data-v-d7477f69]{display:flex;flex-direction:column;background:#fff;border-right:1px solid #ddd}.resize-handle[data-v-d7477f69]{width:8px;background:#fffc;border-left:1px solid rgba(255,255,255,.3);border-right:1px solid rgba(255,255,255,.3);cursor:col-resize;position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.resize-handle[data-v-d7477f69]:hover{background:#4caf501a;border-left-color:#4caf504d;border-right-color:#4caf504d;width:12px}.resize-handle[data-v-d7477f69]:focus{outline:2px solid #4CAF50;outline-offset:2px;background:#4caf5026}.resize-handle-line[data-v-d7477f69]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.resize-handle-grip[data-v-d7477f69]{display:flex;flex-direction:column;gap:4px;align-items:center}.grip-dot[data-v-d7477f69]{width:3px;height:3px;background:#75757599;border-radius:50%;transition:all .2s ease}.resize-handle:hover .grip-dot[data-v-d7477f69]{background:#4caf50}.resize-handle.resizing[data-v-d7477f69]{background:#4caf5033;border-left-color:#4caf50;border-right-color:#4caf50}.resize-handle.resizing .grip-dot[data-v-d7477f69]{background:#4caf50;transform:scale(1.2)}.main-content.resizing[data-v-d7477f69]{cursor:col-resize}.main-content.resizing[data-v-d7477f69] *{cursor:col-resize!important;-webkit-user-select:none;user-select:none}.canvas-panel[data-v-d7477f69]{display:flex;flex-direction:column;background:#fff}.canvas-header[data-v-d7477f69]{padding:16px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.canvas-header h2[data-v-d7477f69]{margin:0;font-size:18px;font-weight:600}.canvas-controls[data-v-d7477f69]{display:flex;gap:16px;align-items:center}.clear-btn[data-v-d7477f69]{padding:8px 16px;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer}.clear-btn[data-v-d7477f69]:hover{background:#c82333}.canvas-container[data-v-d7477f69]{flex:1;position:relative;margin:2px;border:1px solid #ddd;border-radius:2px;overflow:hidden;height:100%}.canvas-element[data-v-d7477f69]{position:absolute;top:0;left:0}.grid-canvas[data-v-d7477f69]{z-index:1}.drawing-canvas[data-v-d7477f69]{z-index:2}.canvas-overlay[data-v-d7477f69]{z-index:3}.coordinate-display[data-v-d7477f69]{position:absolute;top:10px;right:10px;background:#ffffffd9;border:1px solid #E0E0E0;border-radius:6px;padding:6px 10px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;font-weight:500;color:#374151;box-shadow:0 2px 8px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;pointer-events:none}.user-buttons-container[data-v-d7477f69]{position:absolute;bottom:15px;right:15px;display:flex;flex-direction:row;gap:8px;z-index:11}.user-button[data-v-d7477f69]{padding:0 12px;height:40px;border-radius:6px;border:2px solid #10B981;background:#10b98133;color:#10b981;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;opacity:.3;transform:scale(.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 12px #10b98133;display:flex;align-items:center;justify-content:center;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.user-button[data-v-d7477f69]:hover{background:#10b981cc;color:#fff;transform:scale(1.1);box-shadow:0 4px 20px #10b98166}.user-button.visible[data-v-d7477f69]{opacity:1;transform:scale(1)}.user-button[data-v-d7477f69]:active{transform:scale(.95)}.console-output[data-v-d7477f69]{max-height:70px;border-top:1px solid #ddd;background:#f8f9fa}.console-header[data-v-d7477f69]{display:flex;justify-content:space-between;align-items:center;padding:4px 12px;background:#e9ecef;border-bottom:1px solid #ddd}.console-header h4[data-v-d7477f69]{margin:0;font-size:12px;font-weight:600}.clear-console-btn[data-v-d7477f69]{padding:2px 6px;background:#6c757d;color:#fff;border:none;border-radius:3px;font-size:10px;cursor:pointer}.console-messages[data-v-d7477f69]{max-height:40px;min-height:40px;overflow-y:scroll;overflow-x:hidden;padding:8px;scrollbar-width:thin;scrollbar-color:#4CAF50 #f8f9fa;scroll-behavior:smooth}.console-messages[data-v-d7477f69]::-webkit-scrollbar{width:6px}.console-messages[data-v-d7477f69]::-webkit-scrollbar-track{background:#f8f9fa}.console-messages[data-v-d7477f69]::-webkit-scrollbar-thumb{background:#4caf50;border-radius:3px}.console-messages[data-v-d7477f69]::-webkit-scrollbar-thumb:hover{background:#45a049}.console-message[data-v-d7477f69]{font-family:monospace;font-size:12px;margin:1px 0;display:flex;gap:6px;line-height:1.2}.console-message.info[data-v-d7477f69]{color:#17a2b8}.console-message.success[data-v-d7477f69]{color:#28a745}.console-message.error[data-v-d7477f69]{color:#dc3545}.console-message.log[data-v-d7477f69]{color:#495057}.message-time[data-v-d7477f69]{color:#6c757d;flex-shrink:0}.message-content[data-v-d7477f69]{white-space:pre-line}.modal-overlay[data-v-d7477f69]{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content[data-v-d7477f69]{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;width:90%}.modal-header[data-v-d7477f69]{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #ddd}.modal-header h3[data-v-d7477f69]{margin:0;font-size:18px}.close-btn[data-v-d7477f69]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.modal-body[data-v-d7477f69]{padding:16px}.error-message[data-v-d7477f69]{padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;font-family:system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;white-space:pre-line}.control-panel[data-v-d7477f69]{padding:12px 16px;background:#fffffff2;border-top:1px solid rgba(255,255,255,.3);display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 -2px 10px #0000001a;flex-shrink:0}.project-controls[data-v-d7477f69],.export-controls[data-v-d7477f69]{display:flex;align-items:center;gap:12px}.project-name-input[data-v-d7477f69]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:150px;transition:all .3s ease}.project-name-input[data-v-d7477f69]:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.save-btn[data-v-d7477f69],.load-btn[data-v-d7477f69],.new-btn[data-v-d7477f69],.export-code-btn[data-v-d7477f69],.export-btn[data-v-d7477f69],.import-btn[data-v-d7477f69]{display:flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.save-btn[data-v-d7477f69]{background:#10b981;color:#fff}.save-btn[data-v-d7477f69]:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 8px #10b98133}.load-btn[data-v-d7477f69]{background:#3b82f6;color:#fff}.load-btn[data-v-d7477f69]:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 8px #3b82f633}.new-btn[data-v-d7477f69]{background:#059669;color:#fff}.new-btn[data-v-d7477f69]:hover{background:#047857;transform:translateY(-1px);box-shadow:0 4px 8px #05966933}.export-code-btn[data-v-d7477f69]{background:#6b6a6a;color:#fff}.export-code-btn[data-v-d7477f69]:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 4px 8px #6366f133}.export-btn[data-v-d7477f69]{background:#8b5cf6;color:#fff}.export-btn[data-v-d7477f69]:hover{background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 8px #8b5cf633}.import-btn[data-v-d7477f69]{background:#f59e0b;color:#fff}.import-btn[data-v-d7477f69]:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 8px #f59e0b33}.modal-content.extra-large[data-v-d7477f69]{max-width:900px;width:95vw;height:700px;max-height:95vh;overflow:hidden;display:flex;flex-direction:column}.help-modal[data-v-d7477f69]{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.modal-header h2[data-v-d7477f69]{margin:0;color:#333;font-size:1.25rem}.modal-header-buttons[data-v-d7477f69]{display:flex;gap:.5rem;align-items:center}.tutorial-btn-modal[data-v-d7477f69]{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;text-decoration:none;display:flex;align-items:center;gap:.5rem}.tutorial-btn-modal[data-v-d7477f69]:hover{background:linear-gradient(135deg,#45a049,#4caf50);transform:translateY(-1px);color:#fff;text-decoration:none}.help-modal-body[data-v-d7477f69]{padding:1.5rem;overflow-y:auto;flex:1;background:#fafafa}.help-section[data-v-d7477f69]{background:#fff;border-radius:6px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.help-section h3[data-v-d7477f69]{margin-top:0;margin-bottom:1rem;color:#2c3e50;font-size:1.1rem;border-bottom:2px solid #4CAF50;padding-bottom:.5rem}.help-section p[data-v-d7477f69]{margin-bottom:1rem;line-height:1.6;color:#555}.help-section ul[data-v-d7477f69],ol[data-v-d7477f69]{margin:0 0 1rem;padding-left:1.5rem}.help-section li[data-v-d7477f69]{margin-bottom:.5rem;line-height:1.5;color:#555}.command-item[data-v-d7477f69]{background:#f8f9fa;border-left:4px solid #4CAF50;padding:.75rem;margin:.5rem 0;border-radius:0 4px 4px 0}.command-name[data-v-d7477f69]{font-family:Courier New,monospace;font-weight:700;color:#2c3e50;font-size:.95rem}.command-desc[data-v-d7477f69]{color:#666;margin-top:.25rem;font-size:.9rem}.example-code[data-v-d7477f69]{background:#2d3748;color:#e2e8f0;padding:1rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem;line-height:1.4;margin:1rem 0;overflow-x:auto}.example-code .comment[data-v-d7477f69]{color:#68d391}.example-code .function[data-v-d7477f69]{color:#63b3ed}.example-code .number[data-v-d7477f69]{color:#f687b3}.keyboard-shortcut[data-v-d7477f69]{display:inline-block;background:#e2e8f0;color:#2d3748;padding:.2rem .5rem;border-radius:3px;font-family:Courier New,monospace;font-size:.85rem;margin:0 .25rem;border:1px solid #cbd5e0}.close-btn[data-v-d7477f69]{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem;border-radius:4px;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;color:#666}.close-btn[data-v-d7477f69]:hover{background:#0000001a;color:#333}.save-form[data-v-d7477f69],.load-projects[data-v-d7477f69]{margin-bottom:1.5rem}.save-form label[data-v-d7477f69]{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}.project-input[data-v-d7477f69]{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-bottom:1rem;transition:border-color .2s ease}.project-input[data-v-d7477f69]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-actions[data-v-d7477f69]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.cancel-btn[data-v-d7477f69],.confirm-btn[data-v-d7477f69]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-btn[data-v-d7477f69]{background:#6b7280;color:#fff}.cancel-btn[data-v-d7477f69]:hover{background:#4b5563}.confirm-btn[data-v-d7477f69]{background:#3b82f6;color:#fff}.confirm-btn[data-v-d7477f69]:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.confirm-btn[data-v-d7477f69]:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.auto-save-actions[data-v-d7477f69]{flex-direction:column;gap:.5rem;align-items:stretch}.auto-save-actions .confirm-btn[data-v-d7477f69],.auto-save-actions .cancel-btn[data-v-d7477f69],.auto-save-actions .ignore-btn[data-v-d7477f69]{justify-content:center;min-height:44px;font-weight:500}.save-now-btn[data-v-d7477f69]{background:#10b981!important;order:1}.save-now-btn[data-v-d7477f69]:hover{background:#059669!important}.remind-later-btn[data-v-d7477f69]{background:#f59e0b!important;color:#fff!important;order:2}.remind-later-btn[data-v-d7477f69]:hover{background:#d97706!important}.ignore-btn[data-v-d7477f69]{background:#6b7280!important;color:#fff!important;order:3;font-size:.875rem}.ignore-btn[data-v-d7477f69]:hover{background:#4b5563!important}.existing-projects[data-v-d7477f69],.load-projects[data-v-d7477f69]{margin-top:1.5rem}.existing-projects h4[data-v-d7477f69],.load-projects h4[data-v-d7477f69]{margin-bottom:1rem;color:#374151;font-size:1rem;font-weight:600}.project-list[data-v-d7477f69]{max-height:300px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb}.project-item[data-v-d7477f69]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;cursor:pointer;transition:all .2s ease}.project-item[data-v-d7477f69]:last-child{border-bottom:none}.project-item[data-v-d7477f69]:hover{background:#f3f4f6}.project-item.selected[data-v-d7477f69]{background:#dbeafe;border-color:#3b82f6}.project-info[data-v-d7477f69]{display:flex;flex-direction:column;flex:1}.project-name[data-v-d7477f69]{font-weight:500;color:#111827;margin-bottom:.125rem}.project-date[data-v-d7477f69]{font-size:.75rem;color:#6b7280}.overwrite-warning[data-v-d7477f69]{font-size:.75rem;color:#dc2626;font-weight:500}.delete-btn[data-v-d7477f69]{background:#dc2626;color:#fff;border:none;border-radius:4px;padding:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-left:.5rem}.delete-btn[data-v-d7477f69]:hover{background:#b91c1c;transform:scale(1.05)}.no-projects[data-v-d7477f69]{text-align:center;padding:2rem;color:#6b7280}.no-projects p[data-v-d7477f69]{margin:0;font-size:1rem}
