.app{flex-direction:column;height:100vh;display:flex}.toolbar{background:#1b1e24;border-bottom:1px solid #2c313a;align-items:center;gap:16px;padding:10px 16px;display:flex}.toolbar h1{white-space:nowrap;margin:0;font-size:15px;font-weight:600}.toolbar .subtitle{color:#8b93a1;margin-left:6px;font-size:12px;font-weight:400}.status{color:#aab2c0;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;margin-left:auto;font-size:12.5px;display:flex;overflow:hidden}.status-dot{background:#8b93a1;border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-booting .status-dot,.status-installing .status-dot{background:#e2b93d;animation:1.2s ease-in-out infinite pulse}.status-ready .status-dot{background:#4cc38a}.status-running .status-dot{background:#58a6ff;animation:.8s ease-in-out infinite pulse}.status-error .status-dot{background:#f47067}@keyframes pulse{50%{opacity:.35}}.toolbar-actions{gap:8px;display:flex}.btn{color:#e6e9ef;cursor:pointer;background:#2c313a;border:1px solid #3a404b;border-radius:6px;padding:6px 14px;font-size:13px}.btn:hover:not(:disabled){background:#363c47}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-run{background:#2ea06344;border-color:#2ea063}.btn-run:hover:not(:disabled){background:#2ea06377}.btn-stop{background:#f4706744;border-color:#f47067}.btn-stop:hover:not(:disabled){background:#f4706777}.btn-icon{background:0 0;border:none;padding:2px 8px}.panes{flex:1;min-height:0;display:flex}.pane{flex:1;min-width:0;overflow:hidden}.pane+.pane{border-left:1px solid #2c313a}.pane-files{background:#1b1e24;flex-direction:column;flex:0 0 250px;display:flex}.files-header{border-bottom:1px solid #2c313a;align-items:center;gap:6px;padding:8px 10px;font-size:13px;display:flex}.files-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.files-spacer{margin-left:auto}.files-body{flex:1;min-height:0;padding:6px 4px;overflow:auto}.files-intro{flex-direction:column;align-items:flex-start;gap:10px;margin:0;padding:10px 8px;display:flex}.files-muted{color:#8b93a1;margin:0;font-size:12px;line-height:1.5}.files-muted code{background:#14161a;border-radius:4px;padding:1px 4px;font-size:11.5px}.file-tree,.file-tree-children{margin:0;padding:0;list-style:none}.file-row{width:100%;color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:5px;align-items:center;gap:6px;padding:3px 8px;font-size:13px;display:flex}.file-row:hover:not(:disabled){background:#23272f}.file-row.is-active{color:#fff;background:#2c313a}.file-row.is-unopenable{color:#5c6470;cursor:default;opacity:1}.file-caret{color:#8b93a1;flex:none;width:11px;font-size:10px}.file-name{text-overflow:ellipsis;overflow:hidden}.file-dirty{color:#e2b93d;margin-left:auto;padding-left:6px;font-size:10px}.files-truncated{color:#8b93a1;padding:6px 10px;font-size:11.5px;font-style:italic}.btn-toggle[aria-pressed=true]{background:#3a404b;border-color:#58a6ff}.pane-editor{flex-direction:column;display:flex}.editor-header{color:#aab2c0;background:#1b1e24;border-bottom:1px solid #2c313a;align-items:center;gap:7px;padding:5px 12px;font-size:12px;display:flex}.editor-path{text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,Menlo,Consolas,monospace;overflow:hidden}.editor-body{flex:1;min-height:0}.output{background:#14161a;height:100%;padding:12px 16px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.5;overflow-y:auto}.output-line{white-space:pre-wrap;word-break:break-word;margin:0}.output-stdout{color:#d5dae2}.output-stderr{color:#f47067}.output-system{color:#8b93a1;font-style:italic}.output-empty{color:#5c6470;font-style:italic}.drawer-overlay{z-index:10;background:#00000073;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#1b1e24;border-left:1px solid #2c313a;flex-direction:column;gap:12px;width:340px;max-width:90vw;height:100%;padding:16px;display:flex;overflow-y:auto}.drawer-header{justify-content:space-between;align-items:center;display:flex}.drawer-header h2{margin:0;font-size:15px}.drawer-hint{color:#8b93a1;margin:0;font-size:12px;line-height:1.5}.drawer-error{color:#f47067;background:#f4706718;border:1px solid #f4706755;border-radius:6px;padding:8px 10px;font-size:12.5px}.drawer-loading,.package-empty{color:#8b93a1;font-size:13px;font-style:italic}.package-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.package-row{border-radius:6px;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.package-row:hover{background:#23272f}.package-row label{cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:flex}.package-disabled{color:#6b7280;text-decoration:line-through}.drawer-add{gap:8px;display:flex}.drawer-add input{color:#e6e9ef;background:#14161a;border:1px solid #3a404b;border-radius:6px;flex:1;padding:7px 10px;font-size:13px}.drawer-add input:focus{border-color:#58a6ff;outline:none}.drawer-save{margin-top:auto}*{box-sizing:border-box}html,body,#root{height:100%}body{color:#e6e9ef;-webkit-font-smoothing:antialiased;background:#14161a;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
