*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green: #33ff77;--green-dim: #1a8040;--green-faint: #0a3020;--amber: #ffb347;--red: #ff5555;--bg: #0a0f0a;--bg2: #0f1a0f;--bg3: #1a2a1a;--border: #1e3a1e;--text: #c8e8c8;--font: "Courier New", Courier, monospace}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:13px;line-height:1.5;overflow:hidden}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0}.header-left{display:flex;align-items:center;gap:12px}.logo{font-size:28px;font-weight:700;color:var(--green);text-shadow:0 0 8px var(--green);line-height:1}.title-block h1{font-size:14px;color:var(--green);font-weight:700;letter-spacing:.05em}.title-block p{font-size:10px;color:var(--green-dim);margin-top:1px}.header-right{display:flex;align-items:center;gap:8px}.btn{font-family:var(--font);font-size:12px;border:1px solid;border-radius:3px;padding:4px 14px;cursor:pointer;letter-spacing:.05em;transition:all .1s}.btn-run{background:transparent;color:var(--green);border-color:var(--green)}.btn-run:hover:not(:disabled){background:var(--green);color:var(--bg)}.btn-run:disabled{color:var(--green-dim);border-color:var(--green-dim);cursor:not-allowed}.btn-stop{background:transparent;color:var(--red);border-color:var(--red)}.btn-stop:hover{background:var(--red);color:var(--bg)}.example-select{font-family:var(--font);font-size:12px;background:var(--bg3);color:var(--green);border:1px solid var(--border);border-radius:3px;padding:4px 8px;cursor:pointer;outline:none}.example-select:focus{border-color:var(--green-dim)}.workspace{display:flex;flex:1;overflow:hidden;gap:0}.pane-label{font-size:10px;color:var(--green-dim);letter-spacing:.15em;padding:4px 12px;background:var(--bg2);border-bottom:1px solid var(--border);-webkit-user-select:none;user-select:none}.editor-pane{display:flex;flex-direction:column;width:50%;border-right:1px solid var(--border)}.code-editor{flex:1;width:100%;resize:none;background:var(--bg);color:var(--green);font-family:var(--font);font-size:13px;line-height:1.6;padding:12px;border:none;outline:none;caret-color:var(--green);-moz-tab-size:2;tab-size:2}.code-editor::selection{background:var(--green-faint)}.code-editor::placeholder{color:var(--green-dim)}.terminal-pane{display:flex;flex-direction:column;flex:1}.terminal{flex:1;overflow:hidden;display:flex;flex-direction:column}.terminal-output{flex:1;overflow-y:auto;padding:12px;scrollbar-width:thin;scrollbar-color:var(--green-dim) var(--bg)}.terminal-output::-webkit-scrollbar{width:6px}.terminal-output::-webkit-scrollbar-track{background:var(--bg)}.terminal-output::-webkit-scrollbar-thumb{background:var(--green-dim);border-radius:3px}.term-line{white-space:pre-wrap;word-break:break-all;min-height:1.5em;line-height:1.5}.term-output{color:var(--green)}.term-input{color:var(--amber)}.term-error{color:var(--red)}.term-info{color:var(--green-dim);font-style:italic}.term-input-row{display:flex;align-items:center;color:var(--amber);margin-top:2px}.term-prompt{white-space:pre;color:var(--amber)}.term-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font);font-size:13px;color:var(--amber);caret-color:var(--amber);line-height:1.5}.term-cursor{display:inline-block;width:8px;height:1.2em;background:var(--amber);animation:blink 1s step-end infinite;margin-left:1px;vertical-align:text-bottom}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.cheatsheet{border-top:1px solid var(--border);background:var(--bg2);flex-shrink:0}.cheatsheet details>summary{font-size:11px;color:var(--green-dim);letter-spacing:.1em;padding:5px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.cheatsheet details>summary:before{content:"▶ "}.cheatsheet details[open]>summary:before{content:"▼ "}.cheatsheet details>summary:hover{color:var(--green)}.cheat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;padding:10px 12px 12px;font-size:11px}.cheat-grid h3{font-size:10px;color:var(--green-dim);letter-spacing:.1em;margin-bottom:4px;border-bottom:1px solid var(--border);padding-bottom:2px}.cheat-grid code{color:var(--green);display:block;font-size:11px;line-height:1.7}.cvt-reference{padding:10px 12px 14px;font-size:11px}.cvt-intro{color:var(--text);margin-bottom:10px;line-height:1.6}.cvt-intro code{color:var(--green)}.cvt-table{border-collapse:collapse;width:100%;margin-bottom:12px;font-size:11px}.cvt-table th{background:var(--bg3);color:var(--green-dim);text-align:left;padding:4px 8px;border:1px solid var(--border);letter-spacing:.05em;font-size:10px}.cvt-table td{padding:3px 8px;border:1px solid var(--border);color:var(--text);vertical-align:top}.cvt-table td:first-child{color:var(--green);font-weight:700;white-space:nowrap}.cvt-table td:nth-child(2){color:var(--green-dim);white-space:nowrap}.cvt-table td code,.cvt-table td strong{color:var(--green)}.cvt-table tr:nth-child(2n) td{background:var(--bg2)}.cvt-combos h3{font-size:10px;color:var(--green-dim);letter-spacing:.1em;margin-bottom:6px;margin-top:4px}.cvt-note{color:var(--green-dim);font-size:11px;margin-top:8px;line-height:1.6;border-left:2px solid var(--border);padding-left:8px}.cvt-note code,.cvt-note em,.cvt-note strong{color:var(--green)}@media (max-width: 800px){.workspace{flex-direction:column}.editor-pane{width:100%;border-right:none;border-bottom:1px solid var(--border);height:45%}.cheat-grid{grid-template-columns:repeat(2,1fr)}.title-block p{display:none}}
