body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0f172a;background-color:var(--bg-color);color:#e2e8f0;color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#6366f1;--primary-hover:#4f46e5;--secondary-color:#8b5cf6;--accent-color:#ec4899;--success-color:#10b981;--success-hover:#059669;--text-color:#e2e8f0;--text-muted:#94a3b8;--bg-color:#0f172a;--card-bg:#1e293b;--header-bg:#111827;--footer-bg:#111827;--border-color:#334155;--input-bg:#1e293b;--input-border:#334155;--border-radius:8px;--box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--transition:all 0.2s ease}.login-container{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-content{animation:fadeIn .5s ease-out;max-width:420px;width:100%}.login-header{margin-bottom:2.5rem;text-align:center}.logo-container{margin-bottom:1.5rem}.logo-circle{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;box-shadow:0 0 20px #6366f14d;display:flex;height:56px;justify-content:center;margin:0 auto;width:56px}.logo-text{font-size:28px}.login-title,.logo-text{color:#fff;font-weight:700}.login-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;font-size:2.5rem;letter-spacing:-.5px;margin-bottom:.75rem}.login-subtitle{color:#94a3b8;font-size:1.1rem;line-height:1.5;margin:0 auto;max-width:320px}.login-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#1e293bcc;border:1px solid #ffffff1a;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 0 0 1px #ffffff0d;padding:.3rem 1.5rem 1.5rem}.login-card h2{color:#fff;letter-spacing:-.5px;text-align:center}.login-card p{color:#94a3b8;text-align:center}.login-card label{color:#e2e8f0;font-weight:500}.login-input-container{align-items:center;display:flex;flex-direction:row;margin-bottom:1rem;width:100%}.login-input-container label{margin:0;padding:0;width:100px}.login-input{background:#0f172a99!important;border:2px solid #6366f11a!important;color:#fff!important;flex:1 1;font-size:.95rem!important;height:45px!important;padding:0 1rem!important;transition:all .2s ease}.login-input::placeholder{color:#64748b!important}.login-input:focus{background:#0f172acc!important;border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f133!important}.login-button{background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;border:none!important;color:#fff!important;font-size:1rem;font-weight:500;height:45px;transition:all .2s ease;width:100%}.login-button:hover:not(:disabled){box-shadow:0 4px 12px #6366f166;opacity:.95;transform:translateY(-1px)}.login-button:disabled{cursor:not-allowed;opacity:.7}.login-footer{margin-top:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.code-editor{border:1px solid var(--border-color);border-radius:4px;display:flex;flex:1 1;flex-direction:column;font-family:Fira Code,Courier New,monospace;height:100%;overflow:auto}.code-editor .cm-editor{background-color:#1a1b26;color:#a9b1d6;font-size:14px;height:100%}.code-editor .cm-scroller{font-family:Fira Code,Courier New,monospace;overflow:auto}.code-editor .cm-content{padding:8px 0}.code-editor .cm-line{padding:0 8px}.code-editor .cm-gutters{background-color:#16161e;border-right:1px solid #1a1b26;color:#565f89}.code-editor .cm-activeLineGutter{background-color:#1a1b26;color:#7aa2f7}.code-editor .cm-activeLine{background-color:#494d644d}.code-editor .cm-matchingBracket{background-color:#494d644d;outline:1px solid #7aa2f7}.code-editor .cm-selectionMatch{background-color:#494d644d}.code-editor .cm-keyword{color:#bb9af7}.code-editor .cm-operator{color:#89ddff}.code-editor .cm-variable-2{color:#f7768e}.code-editor .cm-variable{color:#7aa2f7}.code-editor .cm-string{color:#9ece6a}.code-editor .cm-comment{color:#565f89;font-style:italic}.code-editor .cm-number{color:#ff9e64}.code-editor .cm-property{color:#73daca}.multi-file-editor{display:flex;flex-direction:column;height:100%}.file-selector{background-color:var(--header-bg);border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;padding:0 8px}.file-tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:.875rem;margin-right:4px;max-width:150px;overflow:hidden;padding:8px 12px;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.file-tab:hover{background-color:#0000000d;color:var(--text-color)}.file-tab.active{border-bottom:2px solid var(--primary-color);color:var(--primary-color);font-weight:500}.empty-editor,.loading-editor{align-items:center;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted);display:flex;flex:1 1;font-family:Fira Code,Courier New,monospace;font-size:1rem;height:100%;justify-content:center;padding:2rem;text-align:center}.new-file-form{align-items:center;background-color:#0000000d;border-radius:4px;display:flex;margin-left:4px;padding:2px}.new-file-input{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:.875rem;padding:4px 8px;width:150px}.new-file-cancel,.new-file-submit{background:none;border:none;border-radius:4px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:4px 8px}.new-file-submit{color:var(--primary-color)}.new-file-cancel:hover,.new-file-submit:hover{background-color:#0000001a}.new-file-button{background-color:#00000005;color:var(--primary-color)}.create-first-file-button{background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;margin-top:1rem;padding:.5rem 1rem;transition:background-color .2s}.create-first-file-button:hover{background-color:var(--primary-color-dark)}.multi-file-editor-with-explorer{display:flex;height:100%;overflow:hidden;width:100%}.file-explorer{border-right:1px solid var(--border-color);flex-direction:column;height:100%;overflow:hidden;width:250px}.file-explorer,.file-explorer-header{background-color:var(--header-bg);display:flex}.file-explorer-header{align-items:center;border-bottom:1px solid var(--border-color);justify-content:space-between;padding:8px 16px}.file-explorer-header h3{color:var(--text-color);font-size:1rem;font-weight:500;margin:0}.file-explorer-add-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--primary-color);cursor:pointer;display:flex;font-size:1.2rem;height:24px;justify-content:center;width:24px}.file-explorer-add-btn:hover{background-color:#0000000d}.file-explorer-new-file{align-items:center;border-bottom:1px solid var(--border-color);display:flex;padding:8px}.file-explorer-content{flex:1 1;overflow:auto;padding:8px 0}.file-explorer-item{align-items:center;border-radius:4px;cursor:pointer;display:flex;margin:1px 8px;padding:6px 8px;-webkit-user-select:none;user-select:none}.file-explorer-item:hover{background-color:#0000000d}.file-explorer-item.file.active{background-color:#6366f11a;color:var(--primary-color)}.file-icon,.folder-icon{font-size:14px;margin-right:8px}.file-name,.folder-name{font-size:.875rem;word-break:break-all}.file-explorer-children{margin-left:16px}.file-explorer-empty{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:32px 16px;text-align:center}.editor-path-bar{background-color:var(--header-bg);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem;padding:8px 16px}.editor-current-file{font-family:Fira Code,Courier New,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (prefers-color-scheme:dark){.file-explorer{background-color:#252a33;background-color:var(--sidebar-bg,#252a33)}.file-explorer-header{background-color:#1f232b;background-color:var(--sidebar-header-bg,#1f232b)}.file-explorer-item:hover{background-color:#ffffff0d}.file-explorer-item.file.active{background-color:#6366f133}}.simulation-preview{display:flex;flex-direction:column;height:100%;position:relative;transition:all .3s ease}.simulation-preview.fullscreen{background-color:var(--card-bg);height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:9999}.simulation-preview.fullscreen .iframe-container{flex:1 1;height:calc(100vh - 50px)}.simulation-preview.fullscreen .iframe-container iframe{border:none;height:100%;width:100%}.preview-header{align-items:center;background-color:var(--header-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 1rem}.preview-header h3{color:var(--text-color);font-size:1rem;font-weight:500;margin:0}.fullscreen-btn,.preview-actions,.refresh-btn{align-items:center;display:flex;gap:.5rem}.fullscreen-btn,.refresh-btn{background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;justify-content:center;padding:.5rem .75rem;transition:var(--transition)}.fullscreen-btn:hover,.refresh-btn:hover{background-color:var(--primary-hover)}.fullscreen-btn svg,.refresh-btn svg{height:16px;width:16px}.iframe-container{background-color:#fff;border-radius:0 0 var(--border-radius) var(--border-radius);flex:1 1;overflow:hidden;position:relative}.iframe-container iframe{background-color:#fff;border:none;height:100%;width:100%}.close-fullscreen-button{align-items:center;background-color:#00000080;border:none;border-radius:50%;cursor:pointer;display:flex;height:2.5rem;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:2.5rem;z-index:10}.close-fullscreen-button:hover{background-color:#000000b3;transform:scale(1.1)}.close-fullscreen-button svg{color:#fff;height:1.25rem;width:1.25rem}.prompt-history-container{margin-left:8px;min-width:32px;position:relative;transition:all .3s ease}.prompt-history-container.expanded{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:250px}.prompt-history-container.collapsed{width:32px}.prompt-history-toggle{align-items:center;background:var(--primary-color);border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:13px;gap:8px;left:0;padding:8px 16px;position:absolute;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:left center;transition:all .2s ease;white-space:nowrap;z-index:10}.prompt-history-container.expanded .prompt-history-toggle{left:100%;margin-left:-32px;transform:translateY(-50%);transform-origin:center}.prompt-history-toggle:hover{background:#4f46e5;background:var(--primary-hover,#4f46e5);transform:translateY(-50%) rotate(-90deg) scale(1.02)}.prompt-history-container.expanded .prompt-history-toggle:hover{transform:translateY(-50%) scale(1.02)}.toggle-icon{font-size:10px;line-height:1}.toggle-text{font-weight:500;letter-spacing:.3px}.prompt-history-content{height:100%;overflow-y:auto;padding:16px}.prompt-history-title{border-bottom:2px solid var(--primary-color);color:#1a1a1a;font-size:1rem;font-weight:600;margin-bottom:16px;padding-bottom:8px}.prompt-history-list{display:flex;flex-direction:column;gap:12px}.prompt-history-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:12px;transition:all .2s ease}.prompt-history-item:hover{border-color:var(--primary-color);box-shadow:0 2px 4px #0000000d}.prompt-number{color:var(--primary-color);display:block;font-size:.75rem;font-weight:600;margin-bottom:4px}.prompt-text{color:#1a1a1a;font-size:.9rem;line-height:1.5;margin:0;word-break:break-word}.App{display:flex;flex-direction:column;min-height:100vh}.App-header{background-color:var(--header-bg);box-shadow:var(--box-shadow);color:#fff;overflow:hidden;padding:1.5rem;position:relative;text-align:center}.App-header:before{background:linear-gradient(90deg,var(--primary-color),var(--secondary-color),var(--accent-color));content:"";height:4px;left:0;position:absolute;right:0;top:0;z-index:1}.header-content{position:relative;z-index:2}.App-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;display:inline-block;font-size:2.5rem;margin:0;transition:transform .2s ease}.App-header h1:hover{transform:scale(1.02)}.App-header p{color:var(--text-muted);font-size:1.1rem;margin-top:.5rem}.App-main{align-items:center;display:flex;flex:1 1;flex-direction:column;padding:2rem}.prompt-container{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--box-shadow);margin-top:2rem;max-width:800px;padding:2rem;transition:var(--transition);width:100%}.prompt-container:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.editor-preview-container{display:flex;gap:24px;height:calc(100vh - 180px);max-width:100%;overflow:hidden;padding:16px;width:100%}.editor-container{display:flex;flex:1 1;flex-direction:column}.editor-container,.preview-container{background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--box-shadow);min-width:0;overflow:hidden}.preview-container{border:1px solid var(--border-color);flex:1 1}.editor-header{align-items:center;background-color:var(--header-bg);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between}.editor-tabs{display:flex}.tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-muted);cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:var(--transition)}.tab:hover{background-color:#ffffff0d}.tab.active,.tab:hover{color:var(--text-color)}.tab.active{background-color:#ffffff08;border-bottom:2px solid var(--primary-color);font-weight:600}.provider-badge{font-size:.8rem;font-weight:500;padding:.25rem .75rem}.download-badge,.provider-badge{background-color:#6366f11a;border:1px solid #6366f133;border-radius:4px;color:var(--primary-color)}.download-badge{align-items:center;cursor:pointer;display:inline-flex;justify-content:center;padding:.35rem;transition:background-color .2s ease}.download-badge:hover:not(:disabled){background-color:#6366f133}.download-badge:disabled{cursor:not-allowed;opacity:.6}.editor-actions{background-color:var(--header-bg);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 1rem}.right-actions{display:flex;gap:8px}.back-button{background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.25rem;transition:var(--transition)}.back-button:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.error-fixing-button{background-color:#f59e0b;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.25rem;transition:var(--transition);white-space:nowrap}.error-fixing-button:hover{background-color:#d97706;transform:translateY(-1px)}.error-fixing-button.active{background-color:#10b981}.error-fixing-button.active:hover{background-color:#059669}.run-button{background-color:var(--success-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.25rem;transition:var(--transition)}.run-button:hover{background-color:var(--success-hover);transform:translateY(-1px)}.error-message{background-color:#ef44441a;border-left:4px solid #ef4444;border-radius:4px;color:#ef4444;margin-top:1rem;padding:1rem}.App-footer{background-color:var(--footer-bg);border-top:1px solid var(--border-color);color:var(--text-muted);margin-top:auto;padding:1.5rem;text-align:center}.top-right-login-button{background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.25rem;position:fixed;right:10px;top:10px;transition:var(--transition);z-index:1000}.top-right-login-button:hover{background-color:var(--primary-hover);transform:translateY(-1px)}@media (max-width:768px){.editor-preview-container{flex-direction:column;height:auto}.editor-container,.preview-container{height:400px}.editor-header{align-items:stretch;flex-direction:column}.download-badge,.provider-badge{margin:.5rem;text-align:center}}.refinement-section{margin-top:1rem;width:100%}.refinement-input-container{display:flex;gap:.5rem;width:100%}.refinement-input{flex:1 1}.refinement-input,.refinement-provider-select{border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;padding:.5rem}.refinement-provider-select{background-color:var(--bg-color);color:var(--text-color)}.refinement-submit{background-color:var(--primary-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:var(--transition)}.refinement-submit:hover:not(:disabled){background-color:var(--primary-hover)}.refinement-submit:disabled{cursor:not-allowed;opacity:.6}.refinement-options{align-items:center;background-color:#6366f10d;border:1px solid var(--border-color);border-radius:4px;display:flex;margin-top:.5rem;padding:.5rem}.error-fixing-toggle{align-items:center;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;-webkit-user-select:none;user-select:none}.error-fixing-toggle input{accent-color:var(--primary-color);height:16px;margin-right:.5rem;width:16px}.error-fixing-toggle span{color:var(--text-color)}.error-message{color:var(--error-color);font-size:.875rem;margin-top:.5rem}.prompt-input{width:100%}.prompt-input h2{color:var(--text-color);font-size:1.75rem;margin-bottom:.75rem;margin-top:0}.prompt-input .description{color:var(--text-muted);line-height:1.6;margin-bottom:1.5rem}.prompt-input form{display:flex;flex-direction:column;gap:1.25rem}.textarea-container{position:relative;width:100%}.prompt-input textarea{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--border-radius);color:var(--text-color);font-family:inherit;font-size:1rem;min-height:150px;padding:1rem;resize:vertical;transition:var(--transition);width:100%}.prompt-input textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f133;outline:none}.char-count{background-color:#1e293bcc;border-radius:3px;bottom:.5rem;color:var(--text-muted);font-size:.8rem;padding:.2rem .5rem;position:absolute;right:.5rem}.char-count .warning{color:var(--accent-color)}.form-controls{align-items:center;display:flex;justify-content:space-between;width:100%}.provider-selector{align-items:center;display:flex;gap:.75rem}.provider-selector label{color:var(--text-muted);font-size:.9rem}.provider-selector select{-webkit-appearance:none;appearance:none;background-color:var(--input-bg);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236366f1'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m19 9-7 7-7-7'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1rem;border:1px solid var(--input-border);border-radius:var(--border-radius);color:var(--text-color);cursor:pointer;font-size:.9rem;padding:.5rem 2rem .5rem .75rem;transition:var(--transition)}.provider-selector select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f133;outline:none}.provider-selector select:disabled{background-color:#1e293b80;cursor:not-allowed;opacity:.7}.prompt-input button{align-items:center;background-color:var(--primary-color);border:none;border-radius:var(--border-radius);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;letter-spacing:.025em;padding:.75rem 1.5rem;transition:var(--transition)}.prompt-input button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.prompt-input button:disabled{background-color:#6366f180;cursor:not-allowed}.prompt-input button.loading{background-color:var(--primary-hover)}.spinner{animation:spin 1s ease-in-out infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:1rem;width:1rem}@keyframes spin{to{transform:rotate(1turn)}}.examples{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:1.5rem}.examples h3{color:var(--text-muted);font-size:1rem;margin-bottom:.75rem;margin-top:0}.example-list{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.example-button{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--border-radius);color:var(--text-color);cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:var(--transition)}.example-button:hover:not(:disabled){background-color:#6366f11a;border-color:var(--primary-color);transform:translateY(-1px)}.example-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.form-controls{align-items:flex-start;flex-direction:column;gap:1rem}.provider-selector{width:100%}.provider-selector select{flex:1 1}.prompt-input button{width:100%}}.simulation-grid-container{margin:0 auto;max-width:1200px;padding:20px;width:100%}.simulation-grid-title{color:#fff;font-size:24px;font-weight:700;margin-bottom:20px;text-align:center}.simulation-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin:0 auto;padding:20px;width:100%}.simulation-tile{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;color:inherit;cursor:pointer;display:flex;flex-direction:column;height:150px;justify-content:space-between;padding:20px;text-decoration:none;transition:box-shadow .3s ease,transform .3s ease}.simulation-tile:hover{box-shadow:0 4px 12px #0000001a;color:inherit;text-decoration:none;transform:translateY(-2px)}.simulation-tile-title{color:#333;font-size:18px;font-weight:600;margin-bottom:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulation-tile-prompt{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#666;display:-webkit-box;flex-grow:1;font-size:14px;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.no-simulations-message{background-color:#f5f5f5;border-radius:8px;color:#666;font-size:16px;grid-column:1/-1;padding:40px;text-align:center}@media (max-width:1024px){.simulation-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.simulation-grid{grid-template-columns:1fr;padding:10px}.simulation-grid-container{padding:10px}.simulation-tile{height:auto;min-height:120px}}
/*# sourceMappingURL=main.6752a687.css.map*/