*{margin:0;padding:0;box-sizing:border-box}body{font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:14px;background:navy;color:#0ff}.app{height:100vh;display:flex;flex-direction:column}header{display:flex;align-items:center;justify-content:space-between;padding:2px 8px;background:#000;color:#fff;border-bottom:1px solid #008080}header h1{font-size:14px;font-weight:700;color:#ff8c00}header button{padding:1px 8px;border:1px solid #008080;background:navy;color:#0ff;cursor:pointer;font-family:inherit;font-size:14px}header button:hover{background:teal;color:#fff}.tabs{display:flex;gap:0}.tab{padding:1px 12px;border:1px solid #008080;background:navy;color:gray;cursor:pointer;font-family:inherit;font-size:14px}.tab:hover{color:#0ff}.tab.active{background:teal;color:#fff}.error{padding:2px 8px;background:maroon;color:#ff0;font-size:14px}.panels{display:flex;flex:1;overflow:hidden}.file-list{width:300px;border-right:1px solid #008080;overflow-y:auto;flex-shrink:0;background:navy}.right-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:navy}.path{padding:2px 4px;font-size:14px;color:#fff;background:teal;font-family:inherit}.breadcrumb .crumb{cursor:pointer}.breadcrumb .crumb:hover{color:#ff0}.loading{padding:4px 8px;color:gray}.entry{padding:0 4px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;line-height:1.4}.entry:not(.disabled):hover{background:teal;color:#fff}.entry.dir{color:#fff;font-weight:700}.entry.file{color:#0ff}.entry.disabled{color:#404080;cursor:default}.entry-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.size{color:gray;margin-left:8px}.entry-actions{display:none;gap:0;flex-shrink:0}.entry:hover .entry-actions{display:flex}.entry-action{background:none;border:none;color:#404080;cursor:pointer;font-family:inherit;font-size:12px;padding:0 1px}.entry-action-download:hover{color:#0f0}.entry-action-delete:hover{color:red}.new-item-buttons{display:flex;border-bottom:1px solid #004040}.new-file-btn{flex:1;padding:1px 4px;color:#ff0;cursor:pointer;text-align:center}.new-file-btn:hover{background:teal;color:#fff}.new-file-row{display:flex;align-items:center;padding:2px 4px;gap:4px;border-bottom:1px solid #004040}.new-file-input{flex:1;padding:1px 4px;border:1px solid #008080;background:#000;color:#0ff;font-family:inherit;font-size:14px;outline:none}.new-file-input:focus{border-color:#ff0}.new-file-ok,.new-file-cancel{padding:1px 6px;border:1px solid #008080;background:navy;color:#ff0;cursor:pointer;font-family:inherit;font-size:14px}.new-file-ok:hover{background:teal;color:#fff}.new-file-cancel{color:red;border-color:maroon}.new-file-cancel:hover{background:maroon;color:#fff}.file-viewer{flex:1;overflow:auto;display:flex;flex-direction:column}.editor-header{display:flex;align-items:center;justify-content:space-between;background:teal}.editor-header .path{background:teal}.editor-actions{display:flex;gap:4px;margin-right:4px}.run-btn{padding:1px 8px;border:1px solid #00ff00;background:navy;color:#0f0;cursor:pointer;font-family:inherit;font-size:14px}.run-btn:hover:not(:disabled){background:#0f0;color:#000}.run-btn:disabled{border-color:#404080;color:#404080;cursor:default}.save-btn{padding:1px 8px;border:1px solid #ffff00;background:navy;color:#ff0;cursor:pointer;font-family:inherit;font-size:14px}.save-btn:hover:not(:disabled){background:#ff0;color:#000}.save-btn:disabled{border-color:#404080;color:#404080;cursor:default}.editor-wrap{flex:1;position:relative;overflow:hidden}.editor-highlight,.editor{position:absolute;top:0;left:0;width:100%;height:100%;padding:4px;margin:0;font-family:inherit;font-size:14px;line-height:1.4;-moz-tab-size:2;tab-size:2;white-space:pre-wrap;word-wrap:break-word;overflow:auto;border:none}.editor-highlight{background:navy;color:#0ff;pointer-events:none}.editor{background:navy;color:#0ff;outline:none;resize:none;caret-color:#fff}.editor-transparent{color:transparent;background:transparent}.hl-keyword{color:#fff;font-weight:700}.hl-string{color:#ff8c00}.hl-comment{color:#404080}.hl-number{color:#0f0}.output-panel{border-top:1px solid #008080;display:flex;flex-direction:column;max-height:40%;min-height:60px}.output-header{display:flex;align-items:center;justify-content:space-between;padding:1px 4px;background:teal;color:#fff}.output-close{background:none;border:none;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;padding:0 4px}.output-close:hover{color:#ff0}.output-content{flex:1;overflow:auto;padding:4px;font-family:inherit;font-size:14px;line-height:1.4;background:#000;color:#0f0;white-space:pre-wrap;word-wrap:break-word;margin:0}.placeholder{display:flex;align-items:center;justify-content:center;flex:1;color:#404080}.help-panel{flex:1;overflow-y:auto;padding:8px 16px;line-height:1.5}.help-panel h2{color:#ff8c00;font-size:14px;margin-bottom:8px}.help-panel h3{color:#ff0;font-size:14px;margin-top:12px;margin-bottom:4px}.help-panel p{color:gray}.help-panel ul{list-style:none;padding:0}.help-panel li{padding:1px 0;color:#0ff}.help-panel li:before{content:"- ";color:gray}.help-panel code{color:#fff;background:none}.help-panel section{margin-bottom:8px}.console-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.console-log{flex:1;overflow-y:auto;padding:4px;font-family:inherit;font-size:14px;line-height:1.4;background:#000}.log-entry{white-space:pre-wrap;word-wrap:break-word}.log-cmd{color:#ff0}.log-res{color:#0ff;margin-bottom:4px}.console-input-row{display:flex;align-items:center;border-top:1px solid #008080;background:#000;padding:0 4px}.console-prompt{color:#ff0;font-family:inherit;margin-right:4px}.console-input{flex:1;padding:4px 0;border:none;outline:none;background:transparent;color:#0ff;font-family:inherit;font-size:14px}.console-input::placeholder{color:#404080}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:navy}::-webkit-scrollbar-thumb{background:teal}::-webkit-scrollbar-thumb:hover{background:#0aa}
