*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#1e1f22;color:#bcbec4;font:13px/1.45 "Segoe UI",system-ui,sans-serif;height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:none;border:0}button:hover{background:#393b40}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #548af7;outline-offset:-2px}a{color:#a9b4c8;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}.toolbar{height:44px;min-height:44px;display:flex;align-items:center;gap:12px;background:#2b2d30;border-bottom:1px solid #1e1f22;padding:0 10px}.icon-button{font-size:18px;width:30px;height:32px;border-radius:4px}.project-logo{background:linear-gradient(135deg,#72d6a5,#c3dd71);color:#17211a;font-size:10px;font-weight:800;width:23px;height:23px;display:grid;place-items:center;border-radius:4px}.project-name{font-weight:600;color:#dfe1e5}.branch{margin-left:14px;font-size:12px;color:#acb2bf}.toolbar-right{display:flex;gap:8px;margin-left:auto}.toolbar-right button{height:30px;padding:0 10px;border-radius:4px;font-size:12px}.workspace{flex:1;min-height:0;display:flex}.rail{width:40px;min-width:40px;border-right:1px solid #393b40;background:#2b2d30;display:flex;align-items:center;flex-direction:column;padding-top:6px;gap:8px}.rail button{width:30px;height:32px;font-size:20px;border-radius:5px}.rail button:first-child{background:#394c70;color:#c6d7ff}aside{width:302px;min-width:230px;background:#2b2d30;border-right:1px solid #393b40;display:flex;flex-direction:column;overflow:hidden}.panel-title{height:40px;min-height:40px;display:flex;align-items:center;gap:10px;padding:0 14px}.panel-title b{font-weight:600;color:#dfe1e5}.search-box{display:flex;margin:0 10px 8px;border:1px solid #4e5157;border-radius:4px;background:#1e1f22}.search-box input{width:100%;min-width:0;background:none;border:0;color:#dfe1e5;padding:7px 9px;font-size:12px}.search-box input::-webkit-search-cancel-button{display:none}.search-box button{width:30px;font-size:18px}.filters{display:flex;gap:4px;padding:0 10px 8px}.filters select{min-width:0;max-width:120px;background:#303236;border:1px solid #4e5157;border-radius:3px;color:#bcbec4;font-size:11px;padding:4px}.filters button{border-radius:3px;min-width:26px}.filters button[aria-pressed=true]{color:#edc986;background:#464036}.root-folder{padding:8px 10px;white-space:nowrap;font-size:12px}.folder{color:#a8afb9;margin-right:5px}.dim{color:#81858f;font-size:11px;margin-left:6px}#tree{overflow:auto;flex:1;padding-bottom:15px}.folder-group summary{list-style:none;padding:5px 14px 5px 24px;cursor:pointer;white-space:nowrap;font-size:12px}.folder-group summary::-webkit-details-marker{display:none}.folder-group summary:before{content:'›';margin-right:7px;color:#a5a9b2}.folder-group[open] summary:before{content:'⌄'}.folder-group summary:hover{background:#35373b}.file{display:flex;align-items:center;gap:8px;width:100%;padding:5px 10px 5px 42px;text-align:left;min-height:38px;line-height:1.3}.file>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file small{display:block;color:#92969f;font-size:10px;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.file.selected{background:#2e436e;color:#dfe1e5}.file.selected small{color:#adbbd6}.py{font:600 10px monospace;color:#76b5dd;flex-shrink:0}.star{color:#e1bd78;margin-left:auto}.project-status{padding:5px 12px;border-top:1px solid #393b40;color:#8e929c;font-size:11px}.project-hidden aside{display:none}main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#1e1f22}.tabs{height:40px;min-height:40px;display:flex;background:#2b2d30;border-bottom:1px solid #393b40;overflow-x:auto;scrollbar-width:thin}.tab{display:flex;align-items:center;flex-shrink:0;border-right:1px solid #393b40;position:relative}.tab.selected{background:#1e1f22;color:#dfe1e5}.tab.selected:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:#4c8dff}.tab>button:first-child{padding:0 7px 0 14px;height:100%;display:flex;align-items:center;gap:8px;font-size:12px}.tab small{font:10px monospace;color:#8e95a4}.close-tab{font-size:17px;width:27px;height:30px;margin-right:4px}.editor-toolbar{min-height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 20px;border-bottom:1px solid #303238;gap:8px}#breadcrumbs{font-size:11px;color:#969ba5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.editor-actions button,.editor-actions a{font-size:11px;padding:4px 7px;border-radius:4px}.editor-actions #favorite{font-size:18px}.editor-actions #favorite[aria-pressed=true]{color:#e8c789}.editor{flex:1;min-height:90px;overflow:auto;outline:none;padding:14px 0 60px;background:#1e1f22;tab-size:4}.code-lines{width:max-content;min-width:100%;font:14px/24px Consolas,"Cascadia Code","Courier New",monospace}.code-line{display:flex;white-space:pre;min-height:24px}.code-line:hover{background:#25262b}.code-line:first-child{background:#25272d}.line-number{width:62px;min-width:62px;padding-right:18px;text-align:right;color:#626773;user-select:none;position:sticky;left:0;background:#1e1f22;z-index:1;font-size:12px}.code-line code{font:inherit;color:#bcbec4;padding-right:50px;border-left:1px solid #31333a;padding-left:14px}.keyword{color:#cf8e6d}.string{color:#6aab73}.number{color:#2aacb8}.comment{color:#7a7e85}.decorator{color:#b3ae60}.builtin{color:#8888c6}#documentation{height:208px;min-height:100px;max-height:45%;display:flex;flex-direction:column;border-top:1px solid #45474d;background:#26282c}.doc-tabs{display:flex;align-items:center;gap:4px;height:35px;min-height:35px;border-bottom:1px solid #3c3e44;background:#2b2d30}.doc-tabs button{height:35px;padding:0 14px;font-size:12px}.doc-tabs button.active{border-bottom:2px solid #548af7;color:#e0e2e7}.doc-tabs #doc-close{margin-left:auto;font-size:20px}#doc-content{padding:14px 22px;overflow:auto;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.doc-title{color:#dfe1e5;font-weight:600}.doc-title span{color:#858c99;font:11px monospace;margin-left:12px}#doc-content p{max-width:1000px;margin:8px 0}.tool-windows{display:flex;align-items:center;height:29px;min-height:29px;background:#2b2d30;border-top:1px solid #393b40}.tool-windows button{height:28px;font-size:11px;padding:0 12px}.tool-windows>span{margin-left:auto;margin-right:12px;color:#8e929c;font-size:11px}.statusbar{height:25px;min-height:25px;background:#2b2d30;border-top:1px solid #393b40;display:flex;justify-content:space-between;align-items:center;padding:0 12px;font-size:11px;color:#9da0a8}.statusbar>div{display:flex;gap:20px}.empty{padding:20px;color:#a5aab5;font-size:12px;line-height:1.8}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#484b52;border:2px solid #232529;border-radius:5px}::-webkit-scrollbar-track{background:#232529}
@media(max-width:1000px){aside{width:255px;min-width:220px}.toolbar-right button span{display:none}.branch{margin-left:0}.code-lines{font-size:13px}.line-number{width:46px;min-width:46px;padding-right:12px}}
@media(max-width:700px){.toolbar{height:48px;min-height:48px;gap:8px;padding:0 8px}.toolbar button{min-width:40px;min-height:40px}.project-name{font-size:12px}.branch{display:none}.rail{display:none}aside{position:fixed;top:48px;bottom:25px;left:0;z-index:10;width:min(340px,92vw);box-shadow:12px 0 40px #0008}.panel-title{height:40px}.search-box input{font-size:16px;min-height:44px}.search-box button{min-width:40px}.filters select{min-height:40px;max-width:135px}.filters button{min-width:40px}.folder-group summary{min-height:40px;padding-top:11px}.file{min-height:48px}.file small{font-size:11px}.tabs{height:44px;min-height:44px}.close-tab{height:40px;width:34px}.editor-toolbar{min-height:42px;padding:0 6px;gap:4px}.editor-actions{gap:2px}.editor-actions button,.editor-actions a{min-height:40px;display:flex;align-items:center;padding:4px 6px}#breadcrumbs{font-size:10px}.code-lines{font-size:13px;line-height:23px}.code-line{min-height:23px}.line-number{min-width:36px;width:36px;padding-right:9px;font-size:11px}.code-line code{padding-left:9px}.editor{padding-top:10px}#documentation{height:180px;max-height:35%}.doc-tabs,.doc-tabs button{height:40px;min-height:40px}#doc-content{padding:10px 14px;font-size:12px}.doc-title span{display:block;margin-left:0}.tool-windows{height:36px;min-height:36px}.tool-windows button{height:36px}.statusbar>div{gap:10px;font-size:10px}}
