*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #f5f0eb;--surface: #faf7f3;--border: #d4cdc4;--text: #2c2420;--muted: #8a7f74;--accent: #6b5c4d;--accent-hover: #8a7464;--error: #c44d3f;--font-mono: "SF Mono", "Fira Code", "Cascadia Code", Consolas, monospace;--font-serif: Georgia, "Times New Roman", "Palatino Linotype", serif}html,body{height:100%;background:var(--bg);color:var(--text);font-family:var(--font-serif)}header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid var(--border)}header h1{font-size:1rem;font-weight:600;color:var(--muted)}#run{padding:.4rem 1.25rem;border:none;border-radius:6px;background:var(--accent);color:#faf7f3;font-family:var(--font-serif);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}#run:hover{background:var(--accent-hover)}.header-actions{display:flex;align-items:center;gap:1rem}.github-link{color:var(--muted);display:flex;transition:color .15s}.github-link:hover{color:var(--text)}main{display:grid;grid-template-columns:1fr 1fr;height:calc(100vh - 49px)}.pane{display:flex;flex-direction:column;overflow:hidden}.pane:first-child{border-right:1px solid var(--border)}.pane-header{display:flex;align-items:center;justify-content:space-between;padding:0 1rem;border-bottom:1px solid var(--border)}.pane label{padding:.6rem 0;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pane>label{padding:.6rem 1rem;border-bottom:1px solid var(--border)}#examples{font-family:var(--font-serif);font-size:.7rem;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:4px;padding:.2rem .4rem;outline:none;cursor:pointer}#examples:hover{color:var(--text);border-color:var(--muted)}#examples optgroup{font-style:normal;color:var(--muted)}#examples option{background:var(--surface);color:var(--text)}#tab-bar{display:flex;border-bottom:1px solid var(--border);background:var(--bg);overflow-x:auto;flex-shrink:0}#tab-bar:empty{display:none}#tab-bar .tab{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;font-family:var(--font-serif);font-size:.7rem;color:var(--muted);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}#tab-bar .tab:hover{color:var(--text)}#tab-bar .tab.active{color:var(--text);border-bottom-color:var(--accent)}.tab-close{opacity:0;font-size:.65rem;line-height:1;padding:.1rem .25rem;border:none;background:transparent;color:inherit;border-radius:3px;cursor:pointer;transition:opacity .15s,background .15s}#tab-bar .tab:hover .tab-close{opacity:1}.tab-close:hover{background:var(--border)}.tab-rename-input{font-family:var(--font-mono);font-size:.7rem;background:var(--surface);color:var(--text);border:1px solid var(--accent);border-radius:3px;padding:0 .25rem;width:10ch;outline:none}.tab-add{font-family:var(--font-serif);font-size:.8rem;color:var(--muted);background:transparent;border:none;padding:.4rem .5rem;cursor:pointer;transition:color .15s}.tab-add:hover{color:var(--text)}.tab-spacer{flex:1}.tab-download{font-family:var(--font-serif);font-size:.65rem;color:var(--muted);background:transparent;border:none;padding:.4rem .75rem;cursor:pointer;white-space:nowrap;transition:color .15s}.tab-download:hover{color:var(--text)}#editor{flex:1;resize:none;border:none;outline:none;padding:1rem;font-family:var(--font-mono);font-size:.9rem;line-height:1.6;background:var(--surface);color:var(--text);-moz-tab-size:2;tab-size:2}#output{flex:1;overflow:auto;padding:1rem;font-family:var(--font-serif);font-size:.9rem;line-height:1.6;background:var(--bg);color:var(--text);white-space:pre-wrap;word-break:break-word}#output.error{color:var(--error)}.inline-input{font-family:var(--font-mono);font-size:.9rem;line-height:1.6;background:transparent;color:var(--accent);border:none;border-bottom:1px solid var(--accent);outline:none;caret-color:var(--accent);width:50%;min-width:8ch}.inline-input.submitted{color:var(--muted);border-bottom-color:transparent}@media(max-width:700px){main{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.pane:first-child{border-right:none;border-bottom:1px solid var(--border)}}
