@charset "UTF-8";
:root{color-scheme:dark;--bg:#12151b;--title:#171a21;--sidebar:#15181f;--editor:#191d25;--terminal:#151920;--line:#272c36;--text:#bec5d2;--muted:#697386;--accent:#a2aff8;--green:#91c9a8;--code-font:"Cascadia Code","Cascadia Mono","SFMono-Regular",Consolas,"Liberation Mono",monospace;--ui-font:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;--tree-width:246px;--activity-width:49px;--terminal-height:239px}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:var(--ui-font);font-size:12px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit;border:0;background:none;cursor:pointer}button:disabled{cursor:default;opacity:.32}button,input{outline:none}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:1px solid #8492d8;outline-offset:-1px}button:hover:not(:disabled){color:#e1e6f0}button:active:not(:disabled){filter:brightness(.93)}input{color:var(--text)}input::placeholder{color:#5d6779}svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}kbd{font-family:var(--code-font);font-size:10px;font-weight:400;color:#6d7789;border:1px solid #343b49;border-radius:3px;padding:1px 4px;line-height:1.3}pre{margin:0}a{color:inherit}::selection{background:#45538588;color:#e6ecff}[hidden]{display:none!important}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#3f475944;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#56617a99;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}
.ide-shell{height:100dvh;min-height:340px;display:grid;grid-template-rows:43px minmax(0,1fr) 25px;background:var(--bg);overflow:hidden}.titlebar{background:var(--title);display:grid;grid-template-columns:1fr minmax(240px,440px) 1fr;align-items:center;gap:25px;padding:0 15px 0 13px;border-bottom:1px solid #292e38;user-select:none}.app-identity{display:flex;align-items:center;gap:11px;min-width:0}.app-symbol{display:grid;place-items:center;width:25px;height:25px;color:#aab6fa}.app-symbol svg{width:20px;height:20px;stroke-width:1.8}.wordmark{font-weight:650;font-size:12px;letter-spacing:1.4px;white-space:nowrap;color:#d0d6e2}.wordmark>span{font-weight:400;letter-spacing:0;color:#8993a5;margin-left:3px}.command-trigger{height:28px;border:1px solid #313744;border-radius:5px;background:#20252e;display:flex;align-items:center;justify-content:center;gap:9px;color:#9aa3b4;font-size:11px;position:relative;box-shadow:0 1px 0 #ffffff02}.command-trigger:hover{background:#252b37;border-color:#424c60}.command-trigger svg{width:13px;height:13px;color:#727c90}.command-trigger kbd{position:absolute;right:8px;font-size:9px;border-color:#384150;color:#7c879b}.title-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.workspace-trust{font-family:var(--code-font);font-size:10px;color:#778398;display:flex;align-items:center;gap:7px}.workspace-trust i,.workspace-meta i,.status-connection i{width:5px;height:5px;background:#88af9c;border-radius:50%;display:inline-block}.icon-button{width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;flex:none;color:#7a8599}.icon-button:hover:not(:disabled){background:#ffffff08}.icon-button svg{width:15px;height:15px}
.workbench{display:grid;grid-template-columns:var(--activity-width) var(--tree-width) minmax(0,1fr);min-height:0;min-width:0}.activitybar{background:#12161d;border-right:1px solid #252b34;display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 0 11px;user-select:none}.activity-button,.activity-decor{width:48px;height:43px;color:#586377;display:flex;align-items:center;justify-content:center;position:relative}.activity-button svg,.activity-decor svg{width:21px;height:21px;stroke-width:1.4}.activity-button.selected{color:#bdc7dc}.activity-button.selected:before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:2px;background:#9ba8ed;border-radius:0 2px 2px 0}.activity-button:hover{color:#bac4d8}.activity-count{background:#7583c4;color:#f1f2ff;position:absolute;right:6px;bottom:3px;border-radius:5px;font-family:var(--code-font);font-size:8px;min-width:13px;height:13px;display:grid;place-items:center;border:1px solid #12161d}.activity-dot{width:5px;height:5px;border-radius:50%;background:#769482;position:absolute;right:10px;bottom:8px}.activity-spacer{flex:1}.profile-badge{width:25px;height:25px;border-radius:50%;background:#242c3e;border:1px solid #3a4560;color:#aab8db;display:grid;place-items:center;font-size:10px;font-weight:600}.sidebar{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--sidebar);border-right:1px solid var(--line);user-select:none;overflow:hidden}.explorer-heading{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;font-size:10px;letter-spacing:1.2px;color:#939db0;flex:none}.explorer-heading-right{display:flex;align-items:center;gap:7px}.project-count{font-family:var(--code-font);font-size:9px;letter-spacing:.2px;color:#626d82;border:1px solid #2b3341;min-width:21px;text-align:center;padding:1px 4px;border-radius:3px}.library-close{display:none}.explorer-search{display:flex;align-items:center;gap:7px;height:28px;margin:0 12px 17px;padding:0 8px;border:1px solid #2a3240;border-radius:4px;background:#1b2029;flex:none}.explorer-search:focus-within{border-color:#59638b}.explorer-search svg{width:13px;height:13px;color:#616d83}.explorer-search input{border:0;background:none;min-width:0;flex:1;font-size:11px;padding:0;height:25px;outline:none}.explorer-search input::-webkit-search-cancel-button{-webkit-appearance:none}.explorer-search kbd{font-size:9px;border:0;padding:0;color:#525d72}.workspace-root{padding:0 13px;display:flex;align-items:center;gap:7px;font-size:10px;font-weight:650;letter-spacing:.65px;color:#9fa9bb;height:26px;flex:none}.workspace-root svg{width:11px;height:11px;color:#7d8799}.workspace-location{display:flex;align-items:center;gap:7px;margin:0 18px 13px 30px;color:#5c697e;font-family:var(--code-font);font-size:9px;white-space:nowrap}.workspace-location>span:last-child{margin-left:auto;color:#465468;font-size:8px}.root-indicator{height:4px;width:4px;border-radius:50%;background:#6f87a8}.project-list{overflow:auto;flex:1;padding:0 6px 20px;scrollbar-width:thin;scrollbar-color:#343d5044 transparent}.project-folder,.project-group{position:relative;margin-bottom:3px}.project-item{width:100%;border:1px solid transparent;min-height:33px;display:flex;align-items:center;gap:7px;padding:5px 9px;border-radius:4px;text-align:left;color:#959fb1;font-size:11px;position:relative;white-space:nowrap}.project-item:hover{background:#ffffff04}.project-item.active{background:#242c3c88;color:#d4dcf0;border-color:#37415a66}.project-item .folder-icon{font-size:12px;color:#9daac4;flex:none}.project-item .project-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.project-item .project-count-small{font-family:var(--code-font);font-size:8px;letter-spacing:.15px;color:#657088;margin-left:auto}.project-item .chevron{width:11px;min-width:11px;flex:none;color:#64718b;font-size:12px;display:inline-flex;align-items:center;justify-content:center}.project-item .chevron svg{width:10px;height:10px}.project-item[aria-expanded="true"] .chevron{transform:rotate(90deg)}.project-files{padding:3px 0 7px 0;margin-left:13px;border-left:1px solid #30394d66}.tree-file,.tree-directory{width:100%;display:flex;align-items:center;gap:8px;min-height:29px;text-align:left;padding:5px 8px;border-radius:3px;font-family:var(--code-font);font-size:10px;color:#7c889e;white-space:nowrap}.tree-directory{font-size:9px;min-height:25px;color:#62728c}.tree-file:hover{background:#ffffff04}.tree-file.active{color:#c0cae5;background:#2b344644}.tree-file svg{width:13px;height:13px;color:#7b95b5}.tree-file .file-icon,.file-icon{display:inline-flex;align-items:center;justify-content:center;min-width:14px;width:14px;font-family:var(--code-font);font-size:9px;font-weight:600;color:#b4b482;flex:none}.tree-file .file-state{font-size:8px;color:#6f977f;margin-left:auto}.empty-search{color:#69748a;padding:6px 20px;font-size:11px}.explorer-bottom{margin-top:auto;border-top:1px solid var(--line);flex:none;padding:0 0 14px}.explorer-section{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;font-size:9px;letter-spacing:.8px;color:#6b778c}.explorer-section svg{width:11px;height:11px}.workspace-meta{padding:2px 15px 0 29px;display:grid;gap:7px;font-family:var(--code-font);font-size:9px;color:#52617a}.workspace-meta>span:first-child{display:flex;align-items:center;gap:6px;color:#718096}.workspace-meta i{width:4px;height:4px}
.editor-workspace{display:grid;grid-template-rows:39px 31px minmax(0,1fr) var(--terminal-height);min-height:0;min-width:0;background:var(--editor);position:relative}.editor-toolbar{height:39px;display:flex;justify-content:space-between;min-width:0;align-items:stretch;background:#14181f;border-bottom:1px solid var(--line)}.file-tabs{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none;align-items:stretch}.file-tabs::-webkit-scrollbar{display:none}.file-tab{display:flex;align-items:center;gap:8px;min-width:144px;flex:none;border-right:1px solid #282e3a;padding:0 15px;background:#151920;color:#626f85;font-family:var(--code-font);font-size:10px;position:relative;white-space:nowrap}.file-tab.active{background:var(--editor);color:#b8c3db}.file-tab.active:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#8d9dd8}.file-tab:hover{background:#1a202a}.file-tab svg{width:13px;height:13px;color:#bcb681}.file-tab .dirty-indicator{width:5px;height:5px;background:#7988bd;border-radius:50%;margin-left:auto;font-size:0;flex:none}.editor-actions{padding:0 11px 0 7px;display:flex;align-items:center;gap:4px;background:#14181f;flex:none}.toolbar-divider{height:15px;width:1px;background:#2a3140;margin:0 3px}.run-button{height:26px;padding:0 10px;display:inline-flex;align-items:center;gap:7px;background:#2b3933;border:1px solid #3c5146;border-radius:4px;color:#a4c5b1;font-size:10px;white-space:nowrap;margin-left:4px}.run-button svg{width:11px;height:11px;fill:currentColor;stroke-width:1}.run-button kbd{border:0;padding:0;margin-left:5px;font-size:12px;color:#6f947f}.run-button:hover:not(:disabled){background:#34463c;border-color:#577361;color:#c8e4d1}.stop-button svg{width:13px;height:13px;fill:currentColor;stroke-width:0}.stop-button:not(:disabled){color:#c69397}.editor-breadcrumb-bar{display:flex;align-items:center;justify-content:space-between;padding:0 17px 0 19px;min-width:0}.breadcrumbs{display:flex;align-items:center;gap:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--code-font);font-size:10px;color:#758198}.breadcrumbs span{color:#506078}.breadcrumbs svg{width:11px;height:11px;color:#66748b}.breadcrumbs .current{color:#9baac4}.editor-label{font-size:9px;color:#48566d;font-family:var(--code-font);white-space:nowrap;margin-left:12px}.editor-surface{position:relative;min-height:0;min-width:0;overflow:hidden;display:flex;background:var(--editor)}.code-scroll{position:relative;display:flex;min-width:0;flex:1;overflow:auto;align-items:flex-start;padding-top:8px;padding-bottom:24px;overscroll-behavior:contain;scrollbar-gutter:stable;outline:none!important;font-family:var(--code-font);font-size:12px;line-height:21px;font-variant-ligatures:none;tab-size:2}.line-numbers{position:sticky;left:0;z-index:2;flex:none;min-width:63px;padding-right:19px;padding-left:16px;text-align:right;color:#48546a;background:var(--editor);user-select:none;font:inherit;line-height:inherit}.line-number{display:block;height:21px;line-height:21px}.line-number.active-line{color:#a4b1cf}.source-code{font:inherit;line-height:inherit;flex:1;min-width:calc(100% - 63px);padding-right:28px;white-space:pre;overflow:visible;color:#b9c3d9;position:relative}.source-code code{font:inherit;line-height:inherit;white-space:pre;display:block}.code-line{display:block;height:21px;line-height:21px;min-width:max-content;position:relative}.code-line.active-line{background:#2a344155;box-shadow:-7px 0 #2a344155,80px 0 #2a344155}.code-line:empty:after{content:"\00a0"}.code-line.is-typing:after{content:"";height:14px;width:1px;background:#adbcf5;display:inline-block;vertical-align:-2px;animation:cursor-blink 1s steps(1,end) infinite;box-shadow:0 0 8px #adbcf544}.tok-comment{color:#66758f;font-style:italic}.tok-string{color:#a9c397}.tok-number{color:#d2ae85}.tok-keyword{color:#b4a3df}.tok-function{color:#95b9dd}.tok-property{color:#b9c5d9}.tok-type{color:#7ec3ba}.tok-operator{color:#8595ae}.typing-cursor{height:15px;display:inline-block;vertical-align:-2px;width:1px;background:#adbcf5;animation:cursor-blink 1s steps(1,end) infinite}.minimap-rail{width:99px;flex:none;position:relative;overflow:hidden;border-left:1px solid #20263299;margin-top:8px;opacity:.7}.minimap{display:block;position:relative;z-index:1;width:88px;height:100%;opacity:.8;margin-left:5px}.minimap-viewport{position:absolute;top:0;left:0;right:8px;height:95px;background:#7082a60b;border-top:1px solid #748cb20d;border-bottom:1px solid #748cb20d;pointer-events:none}.editor-corner-note{position:absolute;bottom:7px;right:116px;display:flex;gap:12px;font-family:var(--code-font);font-size:8px;color:#414d63;pointer-events:none;background:#191d25cc;padding:2px 5px}
.terminal-panel{border-top:1px solid #323a4c;display:grid;grid-template-rows:36px minmax(0,1fr) 23px;background:var(--terminal);min-height:0;position:relative}.terminal-header{display:flex;justify-content:space-between;align-items:center;padding:0 12px 0 19px;border-bottom:1px solid #212833;min-width:0}.terminal-tabs{height:100%;display:flex;align-items:center;gap:21px;min-width:0}.terminal-tab{height:100%;position:relative;padding:0;font-size:9px;letter-spacing:.9px;color:#5d6b82}.terminal-tab.selected,.terminal-tab[aria-pressed="true"]{color:#bac5db}.terminal-tab.selected:after,.terminal-tab[aria-pressed="true"]:after{content:"";position:absolute;bottom:0;height:1px;left:0;right:0;background:#8599d2}.terminal-session{font-size:9px;font-family:var(--code-font);display:flex;align-items:center;gap:5px;color:#5b6b83;border-left:1px solid #2d3646;padding-left:16px;white-space:nowrap}.terminal-session svg{width:12px;height:12px}.terminal-actions{display:flex;align-items:center;gap:3px}.terminal-state{font-family:var(--code-font);font-size:9px;color:#6e937d;padding-right:8px}.terminal-body{min-height:0;overflow:auto;padding:10px 20px 6px;font-family:var(--code-font);font-size:11px;line-height:20px;overscroll-behavior:contain}.terminal-log{white-space:pre-wrap;overflow-wrap:anywhere;color:#94a4bd;font-family:var(--code-font);font-size:11px;line-height:20px}.terminal-line{min-height:20px;display:block}.terminal-line.success{color:#92bba2}.terminal-line.muted{color:#576983}.terminal-line.warning{color:#c3ac7f}.terminal-line.command{color:#c0cbe2;padding:2px 0 5px}.terminal-line .log-time{color:#4c5e77;margin-right:12px;font-size:10px}.terminal-line .log-message{white-space:pre-wrap}.terminal-command-row{display:flex;align-items:center;gap:8px;min-height:24px;margin:3px 0 0}.command-prompt{font-size:10px;display:flex;align-items:center;gap:6px;color:#637797;white-space:nowrap;flex:none}.command-prompt>span{color:#9fafd9}.command-prompt>b{color:#8cae99;font-weight:400;margin-left:4px;font-size:14px}.terminal-command{font-family:var(--code-font);font-size:11px;border:0;outline:none!important;background:transparent;flex:1;min-width:50px;padding:0;height:24px;color:#b9c6dd;caret-color:#a7baf6}.terminal-command::placeholder{color:#475a75}.build-strip{display:flex;align-items:center;gap:15px;border-top:1px solid #212832;padding:0 19px;color:#54647c;font-family:var(--code-font);font-size:9px;position:relative}.build-strip progress{-webkit-appearance:none;appearance:none;border:0;height:2px;width:120px;background:#2a354a;border-radius:0}.build-strip progress::-webkit-progress-bar{background:#2a354a}.build-strip progress::-webkit-progress-value{background:#99aedb;transition:width .18s linear}.build-strip progress::-moz-progress-bar{background:#99aedb}.terminal-hint{margin-left:auto;color:#3f5069;font-size:8px}.is-building .terminal-state{color:#a8b8ed}.is-building #build-stage{color:#92a5cd}.is-building .run-button svg{animation:running-pulse 1s ease-in-out infinite}.terminal-collapsed .editor-workspace{grid-template-rows:39px 31px minmax(0,1fr) 36px}.terminal-collapsed .terminal-panel{grid-template-rows:36px}.terminal-collapsed .terminal-body,.terminal-collapsed .build-strip{display:none}
.statusbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #303748;background:#1b2331;padding-right:13px;font-size:9px;line-height:1;color:#8b9bb7;user-select:none;min-width:0;gap:16px}.status-left,.status-right{display:flex;align-items:center;gap:16px;white-space:nowrap;min-width:0;height:100%}.status-left{gap:13px}.remote-indicator{height:24px;width:35px;display:grid;place-items:center;background:#6373a6;color:#e4e9ff;flex:none}.remote-indicator svg{width:13px;height:13px;stroke-width:2}.branch{display:flex;align-items:center;gap:5px}.branch svg{width:12px;height:12px}.branch-dot{color:#667a9b}.status-diagnostics{display:flex;gap:7px;color:#8a9bb7}.status-message{color:#6c7f9e;overflow:hidden;text-overflow:ellipsis}.status-right{gap:17px;font-family:var(--code-font);font-size:9px}.status-connection{display:flex;align-items:center;gap:5px;color:#8f9eb8}.status-connection i{width:4px;height:4px;background:#80a690}.status-check{width:13px;height:13px;color:#769488}
dialog{color:var(--text);padding:0;border:1px solid #384459;background:#1a202b;box-shadow:0 22px 120px #0009;outline:none}dialog::backdrop{background:#080c1399;backdrop-filter:blur(5px)}.command-dialog{width:min(570px,calc(100vw - 30px));border-radius:9px;margin:11vh auto auto;overflow:hidden}.command-search-row{display:flex;align-items:center;gap:12px;padding:12px 13px;border-bottom:1px solid #30394b}.command-search-row>svg{width:16px;height:16px;color:#7a8aad}.command-search-row input{flex:1;min-width:0;height:25px;border:0;background:none;font-size:12px;outline:none!important}.key-button{padding:2px 5px;border:1px solid #3b455b;border-radius:3px;font-family:var(--code-font);font-size:9px;color:#71829e}.command-section-label{padding:14px 15px 8px;font-size:9px;letter-spacing:1.1px;color:#5f7392}.command-results{padding:0 7px 9px;max-height:360px;overflow:auto}.command-results>button,.command-item{display:flex;align-items:center;gap:12px;padding:10px 9px;width:100%;text-align:left;border-radius:4px;font-size:11px;color:#a9b6cf}.command-results>button:hover,.command-item:hover,.command-results>button.selected,.command-item.selected{background:#2c3850;color:#d2dcf3}.command-results>button>svg,.command-item>svg{width:15px;height:15px;color:#7188b5}.command-results small,.command-item small{margin-left:auto;color:#607797;font-family:var(--code-font);font-size:9px}.command-results .empty{padding:12px;color:#6d7b93;font-size:11px}.command-footer{display:flex;justify-content:flex-end;gap:17px;border-top:1px solid #30394b;padding:8px 14px;font-size:9px;color:#6b7e9c}.command-footer>span{display:flex;align-items:center;gap:4px}.command-footer kbd{font-size:9px;min-width:15px;text-align:center;color:#8497b9;border-color:#34435e}.help-dialog{width:min(485px,calc(100vw - 30px));border-radius:10px;padding:25px 28px}.dialog-heading{display:flex;align-items:center;justify-content:space-between}.dialog-eyebrow{font-size:9px;letter-spacing:1.7px;color:#7d8cad}.help-dialog h2{font-size:22px;font-weight:500;letter-spacing:-.4px;line-height:1.5;color:#d6deef;margin:21px 0 11px}.help-intro{font-size:12px;line-height:1.9;color:#8796af;margin:0}.shortcut-list{margin:24px 0}.shortcut-list>div{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #2c3546;padding:12px 0;font-size:11px;color:#9caac2}.shortcut-list dd{display:flex;align-items:center;gap:5px;margin:0}.shortcut-list kbd{color:#a0aec9;border-color:#3b4962;padding:3px 5px}.shortcut-list dd>span{color:#5e718e;font-size:9px}.help-note{display:flex;align-items:flex-start;gap:10px;padding:13px;background:#222b3b77;border-radius:5px;color:#627998}.help-note svg{width:16px;height:16px;color:#7d93bc;margin-top:2px}.help-note p{font-size:10px;line-height:1.8;margin:0}
.preview-window{width:min(1200px,92vw);height:min(820px,88dvh);max-width:100vw;max-height:100dvh;border:1px solid #414c61;border-radius:9px;overflow:hidden;background:#06090e;padding:0;grid-template-rows:40px minmax(0,1fr);box-shadow:0 30px 150px #000b}.preview-window[open]{display:grid;animation:window-in .22s cubic-bezier(.2,.7,.2,1)}.preview-window::backdrop{background:#080c14c4;backdrop-filter:blur(8px)}.preview-titlebar{display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 17px;background:#1a1f29;border-bottom:1px solid #353e50;user-select:none;gap:12px}.preview-identity{display:flex;align-items:center;gap:10px;min-width:0;font-size:11px;color:#c1cbdf;white-space:nowrap;overflow:hidden}.runtime-indicator{height:6px;width:6px;border-radius:50%;background:#9fbbab;box-shadow:0 0 7px #9fbbab22;flex:none}.preview-title-divider{color:#3e4c64}.preview-identity #preview-path{font-family:var(--code-font);font-size:9px;color:#627493;overflow:hidden;text-overflow:ellipsis}.preview-window-actions{display:flex;gap:5px;align-items:center;flex:none}.preview-window-actions .icon-button{height:28px;width:30px}.preview-window-actions .window-close:hover{color:#efc3c3;background:#81454755}.stage{position:relative;min-height:0;min-width:0;overflow:hidden;touch-action:none;outline:none!important;background:#050810}.stage canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.preview-window.maximized{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0;inset:0;margin:0;border:0}.error-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#101720ee;padding:25px;text-align:center}.error-overlay>svg{width:32px;height:32px;color:#7183a5}.error-overlay h2{font-family:var(--code-font);font-size:17px;font-weight:400;color:#c0cce4;margin:20px 0 0}.error-overlay p{font-size:11px;line-height:1.7;color:#8495b2;max-width:400px}.retry-button{border:1px solid #455777;background:#26354d;color:#abbfe5;border-radius:4px;padding:7px 13px;font-size:11px;margin-top:7px}.toast{position:fixed;bottom:39px;right:20px;z-index:1000;padding:11px 17px;font-size:11px;line-height:1.6;max-width:min(380px,calc(100vw - 40px));background:#242e40;border:1px solid #445474;border-radius:5px;box-shadow:0 8px 35px #0006;color:#c4d0e8}.drawer-scrim{display:none}.ide-shell.sidebar-collapsed .workbench{grid-template-columns:var(--activity-width) minmax(0,1fr)}.ide-shell.sidebar-collapsed .sidebar{display:none}
@keyframes cursor-blink{0%,49%{opacity:1}50%,100%{opacity:0}}@keyframes running-pulse{0%,100%{opacity:1}50%{opacity:.35}}@keyframes window-in{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1700px){:root{--tree-width:267px;--terminal-height:268px}.code-scroll{font-size:13px;line-height:22px}.code-line,.line-number{height:22px;line-height:22px}.project-item{font-size:12px;min-height:35px}.tree-file{font-size:11px}.terminal-log,.terminal-command{font-size:12px;line-height:21px}.terminal-body{line-height:21px}.minimap-rail{width:120px}.minimap{width:105px}.editor-corner-note{right:138px}}
@media(max-width:1150px){:root{--tree-width:222px;--terminal-height:222px}.titlebar{grid-template-columns:1fr minmax(200px,340px) 1fr;gap:20px}.workspace-trust{display:none}.status-right{gap:12px}.status-optional{display:none}.minimap-rail{width:65px}.minimap{width:57px}.editor-corner-note{right:80px}.project-item{padding-left:6px;padding-right:6px}.file-tab{min-width:129px;padding:0 12px;font-size:9px}.status-message{max-width:230px}}
@media(max-width:900px){:root{--tree-width:203px;--activity-width:43px;--terminal-height:213px}.titlebar{padding:0 10px;grid-template-columns:1fr minmax(200px,300px) 1fr;gap:12px}.wordmark{font-size:10px;letter-spacing:1px}.app-identity{gap:7px}.app-symbol{width:20px}.title-actions{gap:0}.command-trigger{height:26px}.command-trigger kbd{display:none}.activity-button,.activity-decor{width:42px}.activity-button svg,.activity-decor svg{width:19px;height:19px}.explorer-search{margin-left:10px;margin-right:10px}.workspace-location{font-size:8px;margin-left:22px}.project-item{font-size:10px}.tree-file{font-size:9px}.workspace-meta{padding-left:22px;font-size:8px}.editor-actions{padding-right:8px;gap:0}.run-button{padding:0 8px}.run-button kbd{display:none}.editor-toolbar .toolbar-divider{margin:0 1px}.line-numbers{min-width:49px;padding-left:10px;padding-right:13px}.source-code{min-width:calc(100% - 49px)}.code-scroll{font-size:11px;line-height:20px}.code-line,.line-number{height:20px;line-height:20px}.minimap-rail{width:47px}.minimap{width:40px}.editor-corner-note{right:58px}.statusbar{font-size:8px;padding-right:8px;gap:8px}.status-left,.status-right{gap:10px}.status-right{font-size:8px}.status-diagnostics{display:none}.status-message{max-width:190px}.terminal-header{padding-left:15px;padding-right:9px}.terminal-body{padding-left:15px;padding-right:15px}.terminal-log{font-size:10px}.command-prompt{font-size:9px}.terminal-command{font-size:10px}.build-strip{padding:0 15px}.terminal-tabs{gap:17px}.terminal-session{padding-left:12px}.terminal-state{font-size:8px}}
@media(max-width:700px),(pointer:coarse) and (max-width:1100px){:root{--terminal-height:225px;--activity-width:40px;--tree-width:255px}.ide-shell{grid-template-rows:42px minmax(0,1fr) 25px;min-height:330px}.titlebar{grid-template-columns:auto minmax(100px,1fr) auto;gap:15px;padding:0 9px}.app-symbol{display:none}.wordmark{font-size:9px;letter-spacing:1.1px}.wordmark>span{display:none}.command-trigger{font-size:9px;gap:6px;height:26px;justify-content:flex-start;padding-left:9px}.command-trigger svg{width:12px;height:12px}.title-actions>.icon-button{width:25px}.workbench{grid-template-columns:40px minmax(0,1fr)}.sidebar{position:fixed;top:42px;bottom:25px;left:40px;width:min(285px,calc(100vw - 70px));z-index:30;transform:translateX(calc(-100% - 40px));transition:transform .2s ease;border-right-color:#44516c;box-shadow:12px 0 35px #0006}.sidebar.open{transform:translateX(0)}.library-close{display:flex;width:22px;height:22px}.explorer-heading{height:45px}.explorer-search{height:30px;margin:0 14px 17px}.explorer-search input{font-size:11px}.workspace-root{font-size:10px;padding-left:15px}.workspace-location{margin-left:31px;font-size:9px}.project-list{padding-left:8px;padding-right:8px}.project-item{font-size:12px;min-height:36px;padding-left:9px;padding-right:9px}.project-files{margin-left:14px}.tree-file{font-size:11px;min-height:32px}.workspace-meta{font-size:9px;padding-left:28px}.drawer-scrim{display:block;position:fixed;top:42px;left:40px;right:0;bottom:25px;z-index:25;background:#080c14a6;backdrop-filter:blur(2px)}.activitybar{z-index:31;padding-top:7px;gap:7px}.activity-button,.activity-decor{width:39px;height:39px}.activity-button svg,.activity-decor svg{width:18px;height:18px}.activity-count{right:4px;bottom:2px;font-size:7px;min-width:12px;height:12px}.activity-decor:last-of-type{display:none}.profile-badge{width:22px;height:22px;font-size:9px}.editor-workspace{grid-template-rows:38px 30px minmax(0,1fr) var(--terminal-height)}.editor-toolbar{height:38px}.file-tab{min-width:118px;font-size:9px;padding:0 11px;gap:6px}.file-tab .file-icon{font-size:8px;width:12px;min-width:12px}.editor-actions{padding:0 5px;gap:0}.editor-actions .icon-button{width:24px;height:25px}.editor-actions #retype-button{display:none}.toolbar-divider{display:none}.run-button{height:24px;padding:0 7px;gap:5px;margin-left:3px;font-size:9px}.run-button svg{width:10px;height:10px}.editor-breadcrumb-bar{padding:0 11px}.breadcrumbs{gap:6px;font-size:9px}.editor-label{display:none}.minimap-rail{display:none}.editor-corner-note{display:none}.code-scroll{font-size:10px;line-height:20px;padding-top:5px}.code-line,.line-number{height:20px;line-height:20px}.line-numbers{min-width:37px;padding-left:7px;padding-right:10px}.source-code{min-width:calc(100% - 37px);padding-right:20px}.terminal-panel{grid-template-rows:35px minmax(0,1fr) 22px}.terminal-header{padding:0 7px 0 11px}.terminal-tabs{gap:14px}.terminal-tab{font-size:8px;letter-spacing:.6px}.terminal-session{display:none}.terminal-actions{gap:0}.terminal-state{padding-right:4px;font-size:8px}.terminal-actions .icon-button{width:25px;height:25px}.terminal-body{padding:9px 11px 4px;line-height:18px}.terminal-log{font-size:9px;line-height:18px}.terminal-line{min-height:18px}.terminal-line .log-time{font-size:8px;margin-right:7px}.terminal-command-row{gap:5px;flex-wrap:wrap;min-height:23px;margin-top:5px}.command-prompt{font-size:9px;gap:5px}.command-prompt b{font-size:11px;margin-left:2px}.terminal-command{font-size:10px;min-width:90px;height:22px}.build-strip{padding:0 11px;gap:8px;font-size:8px}.build-strip progress{width:55px}.terminal-hint{font-size:7px}.statusbar{gap:7px;padding-right:8px;font-size:8px}.status-left{gap:9px}.remote-indicator{width:40px}.status-diagnostics,.status-message,.status-connection,.status-check{display:none}.status-right{gap:10px;font-size:8px}.branch{gap:4px}.branch svg{width:10px;height:10px}.terminal-collapsed .editor-workspace{grid-template-rows:38px 30px minmax(0,1fr) 35px}.terminal-collapsed .terminal-panel{grid-template-rows:35px}.preview-window{width:calc(100vw - 18px);height:83dvh;border-radius:7px;grid-template-rows:38px minmax(0,1fr)}.preview-titlebar{padding:0 5px 0 12px;gap:5px}.preview-identity{font-size:10px;gap:7px}.preview-identity #preview-path{font-size:8px;max-width:120px}.preview-window-actions{gap:0}.preview-window-actions .icon-button{width:28px;height:27px}.preview-window-actions .icon-button svg{width:13px;height:13px}.preview-window.maximized{width:100vw;height:100dvh}.command-dialog{margin-top:9vh}.help-dialog{padding:20px}.help-dialog h2{font-size:20px}.toast{bottom:36px;right:11px;font-size:10px}.ide-shell.sidebar-collapsed .sidebar{display:flex}.ide-shell.sidebar-collapsed .workbench{grid-template-columns:40px minmax(0,1fr)}}
@media(max-width:420px){:root{--terminal-height:204px}.titlebar{gap:10px}.wordmark{font-size:8px;letter-spacing:.8px}.command-trigger{font-size:8px}.command-trigger svg{width:11px;height:11px}.code-scroll{font-size:9px;line-height:19px}.code-line,.line-number{height:19px;line-height:19px}.terminal-state{max-width:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-body{padding-left:9px;padding-right:8px}.terminal-log{font-size:8px}.command-prompt{font-size:8px}.terminal-command{font-size:9px}.status-right{font-size:7px;gap:9px}.preview-identity #preview-path{display:none}.preview-title-divider{display:none}.run-button{font-size:8px}.file-tab{min-width:107px;font-size:8px;padding:0 9px}.terminal-hint{display:none}}
@media(max-height:620px) and (min-width:701px){:root{--terminal-height:176px}.explorer-bottom{display:none}.terminal-body{padding-top:6px}.code-scroll{padding-top:3px}.preview-window{height:94dvh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* A spacious runtime frame lets the particle depth read on large screens. */
@media(min-width:701px) and (pointer:fine){
  .preview-window{width:calc(100vw - 36px);height:calc(100dvh - 36px)}
}
.preview-window[open] .stage canvas{animation:scene-arrival 1.4s cubic-bezier(.16,.75,.25,1) both;transform-origin:50% 50%}
@keyframes scene-arrival{from{opacity:.15;transform:scale(1.055)}to{opacity:1;transform:scale(1)}}
/* Expanded workspaces and touch ergonomics. */
.project-label{display:block;overflow:hidden;text-overflow:ellipsis;line-height:17px}
.project-subtitle{display:block;font:9px/15px var(--ui-font);color:#65748b;letter-spacing:.1px}
.project-item.active .project-subtitle{color:#93a3bf}
.project-item{min-height:43px}
.project-item[aria-expanded="true"] .chevron{transform:none}
.project-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.code-scroll,.terminal-body,.file-tabs{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.file-tabs{touch-action:pan-x}
.preview-identity{flex:1}.preview-identity #preview-title{overflow:hidden;text-overflow:ellipsis;min-width:0}
@media(max-width:700px),(pointer:coarse) and (max-width:1100px){
  :root{--terminal-height:clamp(170px,28dvh,230px)}
  .ide-shell{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);min-height:300px;grid-template-rows:48px minmax(0,1fr) 25px}
  .titlebar{height:48px;gap:8px}.title-actions>.icon-button{width:40px;height:44px}
  .command-trigger{height:36px;font-size:10px}.wordmark{font-size:9px}
  .sidebar{top:calc(48px + env(safe-area-inset-top));bottom:calc(25px + env(safe-area-inset-bottom));left:calc(40px + env(safe-area-inset-left));width:min(300px,calc(100vw - 48px - env(safe-area-inset-left) - env(safe-area-inset-right)))}
  .drawer-scrim{top:calc(48px + env(safe-area-inset-top));bottom:calc(25px + env(safe-area-inset-bottom));left:calc(40px + env(safe-area-inset-left));right:env(safe-area-inset-right)}
  .sidebar:not(.open){transform:translateX(calc(-100% - 40px - env(safe-area-inset-left)))}
  .preview-window:not(.maximized){inset:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
  .activity-button{height:48px}.activity-count{right:3px;bottom:6px;min-width:17px}
  .explorer-heading{height:48px}.library-close{width:40px;height:44px}
  .explorer-search{height:40px}.explorer-search input{height:36px;font-size:16px}
  .project-item{min-height:50px;font-size:12px}.project-subtitle{font-size:10px;line-height:17px}
  .tree-file{min-height:44px;font-size:11px}.tree-directory{min-height:34px}
  .editor-workspace{grid-template-rows:48px 29px minmax(0,1fr) var(--terminal-height)}
  .editor-toolbar{height:48px}.file-tab{min-height:48px;min-width:114px;font-size:10px}
  .editor-actions{padding-right:4px}.editor-actions .icon-button{width:36px;height:44px}
  .run-button{height:40px;font-size:11px;padding:0 9px;min-width:86px;gap:5px}
  .code-scroll{font-size:11px;line-height:21px}.code-line,.line-number{height:21px;line-height:21px}
  .line-numbers{min-width:40px;padding-right:10px}.source-code{min-width:calc(100% - 40px)}
  .terminal-panel{grid-template-rows:42px minmax(0,1fr) 22px}.terminal-tabs{gap:13px}.terminal-tab{font-size:9px;min-height:42px}
  .terminal-actions .icon-button{width:32px;height:40px}.terminal-state{max-width:75px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .terminal-body{padding:7px 10px 6px}.terminal-log{font-size:10px;line-height:19px}.terminal-line{min-height:19px}
  .terminal-line .log-time{display:none}.terminal-command-row{gap:4px;align-items:center}
  .command-prompt{font-size:10px;min-height:22px}.terminal-command{font-size:16px;height:32px;min-width:130px;flex-basis:100%}
  .terminal-collapsed .editor-workspace{grid-template-rows:48px 29px minmax(0,1fr) 42px}.terminal-collapsed .terminal-panel{grid-template-rows:42px}
  .preview-window{width:calc(100vw - 12px - env(safe-area-inset-left) - env(safe-area-inset-right));height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));grid-template-rows:48px minmax(0,1fr)}
  .preview-titlebar{padding-left:12px}.preview-window-actions .icon-button{width:42px;height:44px}
  .preview-identity{font-size:11px}.preview-identity #preview-path,.preview-title-divider{display:none}
  .preview-window.maximized{height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
  .command-search-row input{font-size:16px;height:32px}.command-item{min-height:44px}
  .command-close,.key-button{min-width:40px;min-height:36px}.help-dialog .icon-button{width:44px;height:44px}
  .command-dialog{max-height:calc(90dvh - 20px);margin-top:5dvh}.command-results{max-height:55dvh}
  .status-right{font-size:8px}.breadcrumbs{font-size:10px}.minimap-rail{display:none}
}
@media(max-height:500px) and (max-width:1100px) and (pointer:coarse){
  :root{--terminal-height:130px}.ide-shell{grid-template-rows:40px minmax(0,1fr) 21px;min-height:260px}
  .titlebar{height:40px}.title-actions>.icon-button{height:38px}.command-trigger{height:32px}
  .sidebar,.drawer-scrim{top:calc(40px + env(safe-area-inset-top));bottom:calc(21px + env(safe-area-inset-bottom))}
  .editor-workspace{grid-template-rows:42px 25px minmax(0,1fr) var(--terminal-height)}.editor-toolbar{height:42px}.file-tab{min-height:42px}
  .terminal-collapsed .editor-workspace{grid-template-rows:42px 25px minmax(0,1fr) 42px}
  .preview-window{height:calc(100dvh - 8px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:calc(100vw - 8px - env(safe-area-inset-left) - env(safe-area-inset-right));grid-template-rows:44px minmax(0,1fr)}
}
