:root{--bg-color:#f1f5f9;--header-bg:#fff;--text-primary:#1e293b;--text-secondary:#64748b;--border-color:#e2e8f0;--accent-color:#6366f1;--accent-hover:#4f46e5;--editor-bg:#fff;--console-bg:#f8fafc;--console-text:#334155;--console-error:#ef4444;--tab-active-bg:#6366f1;--tab-hover-bg:#6366f114;--preview-bg:#fff}.dark{--bg-color:#0f172a;--header-bg:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border-color:#334155;--accent-color:#818cf8;--accent-hover:#a5b4fc;--editor-bg:#1e293b;--console-bg:#0f172a;--console-text:#e2e8f0;--console-error:#f87171;--tab-active-bg:#6366f1;--tab-hover-bg:#818cf81f;--preview-bg:#1e293b}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif;overflow:hidden}#root{height:100%}.app-container{flex-direction:column;height:100%;display:flex}.header{background-color:var(--header-bg);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;height:52px;padding:0 1.25rem;display:flex}.header-title{color:var(--text-primary);white-space:nowrap;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;display:flex}.header-left{align-items:center;gap:1rem;min-width:0;display:flex}.header-actions{align-items:center;gap:.25rem;display:flex}.header-controls{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.run-mode-toggle{border:1px solid var(--border-color);background:var(--bg-color);border-radius:.375rem;display:flex;overflow:hidden}.run-mode-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:.3rem;padding:.3rem .65rem;font-family:inherit;font-size:.775rem;font-weight:500;transition:all .15s;display:flex}.run-mode-btn.active{background:var(--accent-color);color:#fff}.run-mode-btn:not(.active):hover{background:var(--tab-hover-bg);color:var(--text-primary)}.run-btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:.375rem;align-items:center;gap:.4rem;padding:.45rem 1rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:background-color .15s,transform .1s;display:flex}.run-btn:hover{background:var(--accent-hover);transform:translateY(-1px)}.run-btn:active{transform:translateY(0)}.icon-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items:center;padding:.4rem;transition:all .15s;display:flex}.icon-btn:hover{background:var(--tab-hover-bg);color:var(--text-primary)}.main-content{flex:1;min-height:0;display:flex;overflow:hidden}.editor-panel{border-right:none;flex-direction:column;flex-shrink:0;min-width:0;min-height:0;display:flex}.v-divider{cursor:col-resize;background:var(--border-color);z-index:10;flex-shrink:0;justify-content:center;align-items:center;width:5px;transition:background .15s;display:flex;position:relative}.v-divider:hover,.v-divider:active{background:var(--accent-color)}.v-divider-bar{pointer-events:none;background:#ffffff59;border-radius:2px;width:1px;height:40px}.file-tabs{background:var(--header-bg);border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex;overflow-x:auto}.file-tab{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.4rem;padding:.5rem 1rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.825rem;font-weight:500;transition:all .15s;display:flex;position:relative}.file-tab:hover{color:var(--text-primary);background:var(--tab-hover-bg)}.file-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);background:var(--tab-hover-bg)}.file-tab-icon{font-size:.9rem}.file-tab-label{font-size:.8rem}.editor-pane{flex:1;min-height:0;position:relative;overflow:hidden}.right-panel{background:var(--preview-bg);flex-direction:column;flex-shrink:0;min-width:0;min-height:0;display:flex}.panel-view-tabs{background:var(--header-bg);border-bottom:1px solid var(--border-color);display:none}.panel-view-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:.3rem;padding:.5rem 1rem;font-family:inherit;font-size:.825rem;font-weight:500;transition:all .15s;display:flex}.panel-view-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);background:var(--tab-hover-bg)}.preview-pane{border-bottom:1px solid var(--border-color);flex-direction:column;flex:1;min-height:0;display:flex}.preview-header{background:var(--header-bg);border-bottom:1px solid var(--border-color);color:var(--text-secondary);flex-shrink:0;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.8rem;font-weight:600;display:flex}.preview-badge{color:#fff;letter-spacing:.03em;background:#22c55e;border-radius:99px;margin-left:auto;padding:.1rem .45rem;font-size:.65rem;font-weight:700;animation:2s ease-in-out infinite pulse-badge}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.65}}.preview-content{background:#fff;flex:1;min-height:0;overflow:hidden}.preview-iframe{border:none;width:100%;height:100%;display:block}.preview-placeholder{height:100%;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2rem;display:flex}.preview-placeholder p{color:var(--text-secondary);font-size:.875rem}.preview-placeholder strong{color:var(--accent-color)}.preview-placeholder-sub{opacity:.7;font-size:.775rem!important}.console-pane-new{background:var(--console-bg);color:var(--console-text);border-top:1px solid var(--border-color);flex-direction:column;flex:0 0 180px;min-height:0;transition:flex .2s;display:flex}.console-pane-new.closed{flex:0 0 36px}.console-header{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary);background:#00000014;flex-shrink:0;justify-content:space-between;align-items:center;padding:.4rem 1rem;font-size:.8rem;font-weight:600;transition:background .15s;display:flex}.console-header:hover{background:#00000024}.console-output{white-space:pre-wrap;color:var(--console-text);flex:1;padding:.75rem 1rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;line-height:1.6;overflow-y:auto}.console-output.error{color:var(--console-error)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--header-bg);width:90%;max-width:420px;color:var(--text-primary);border-radius:.75rem;padding:2rem;animation:.2s modal-in;box-shadow:0 20px 60px #0000004d}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal h2{margin-top:0;margin-bottom:1.5rem;font-size:1.2rem;font-weight:700}.setting-row{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.setting-row label{font-size:.875rem;font-weight:500}.setting-row input,.setting-row select{border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-primary);border-radius:.375rem;outline:none;padding:.4rem .6rem;font-family:inherit;font-size:.875rem}.modal-btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:.375rem;width:100%;margin-top:1rem;padding:.65rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:background-color .15s}.modal-btn:hover{background:var(--accent-hover)}.products-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.samples-layout{flex:1;gap:1.25rem;min-height:0;display:flex;overflow:hidden}.samples-sidebar{border-right:1px solid var(--border-color);flex-direction:column;gap:.4rem;width:36%;padding-right:1rem;display:flex;overflow-y:auto}.samples-preview{flex-direction:column;gap:1rem;width:64%;padding-right:.25rem;display:flex;overflow-y:auto}.resize-handle{background:var(--bg-color);cursor:row-resize;justify-content:center;align-items:center;height:6px;display:flex}.resize-handle-bar{background:var(--border-color);border-radius:2px;width:36px;height:2px;transition:background .15s}.resize-handle:hover .resize-handle-bar,.resize-handle:active .resize-handle-bar{background:var(--accent-color)}@media (width<=768px){.main-content{flex-direction:column}.editor-panel{border-right:none;border-bottom:1px solid var(--border-color);height:50%;width:100%!important}.right-panel{height:50%;width:100%!important}.v-divider{display:none}.panel-view-tabs{flex-shrink:0;display:flex}.preview-pane.hidden-mobile,.console-pane-new.hidden-mobile{display:none}.preview-pane.visible,.console-pane-new.visible{flex:1;min-height:0;display:flex}.header{padding:0 .75rem}.header-left{gap:.5rem}.run-mode-toggle{display:none}.samples-layout{flex-direction:column;overflow-y:auto}.samples-sidebar{border-right:none;border-bottom:1px solid var(--border-color);white-space:nowrap;flex-direction:row;flex-shrink:0;width:100%;padding-bottom:.75rem;padding-right:0;overflow-x:auto}.samples-sidebar button{min-width:130px}.samples-preview{width:100%;padding-right:0}.modal{padding:1.25rem!important}}@media (width<=480px){.header-title span,.file-tab-label{display:none}.file-tab{padding:.5rem .65rem}}
