*{margin:0;padding:0;box-sizing:border-box}:root{--color-rgb-white:255,255,255;--vscode-bg:#0a0a0a;--vscode-sidebar:#151515;--vscode-editor:#0a0a0a;--vscode-line-bg:#1a1a1a;--vscode-border:#262626;--syn-keyword:#f92672;--syn-name:#f8f8f2;--syn-type:#66d9ef;--syn-string:#e6db74;--syn-number:#ae81ff;--syn-comment:#75715e;--syn-property:#a6e22e;--syn-meta:#f92672;--color-rgb-primary:0,255,136;--primary:#00ff88;--primary-hover:#1eff9d;--primary-text:#0a0a0a;--success:#00ff88;--success-hover:#00cc6a;--danger:#ff4444;--color-rgb-danger:255,68,68;--warning:#ffaa00;--accent:#00ff88;--accent-dark:#00cc6a;--text-primary:#fafafa;--text-secondary:#a0a0a0;--text-muted:#707070;--border-color:rgba(var(--color-rgb-white),0.12);--border-color-hover:rgba(var(--color-rgb-white),0.25);--shadow:none;--header-height:58px;--layout-gap:4px;--panel-radius:6px;--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease}[data-theme="light"]{--color-rgb-white:0,0,0;--vscode-bg:#f4f5f7;--vscode-sidebar:#f4f5f7;--vscode-editor:#ffffff;--vscode-line-bg:#eef0f3;--vscode-border:#d0d7de;--border-color:#d0d7de;--syn-keyword:#d73a49;--syn-name:#24292e;--syn-type:#005cc5;--syn-string:#032f62;--syn-number:#005cc5;--syn-comment:#6a737d;--syn-property:#6f42c1;--syn-meta:#d73a49;--color-rgb-primary:0,115,59;--primary:#00733b;--primary-hover:#005a2e;--primary-text:#ffffff;--success:#00733b;--success-hover:#005a2e;--danger:#d32f2f;--color-rgb-danger:211,47,47;--warning:#f57c00;--accent:#00733b;--accent-dark:#005a2e;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#6b7280;--border-color-hover:#99aab5;--shadow:0 1px 3px rgba(0,0,0,0.1)}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--vscode-bg);color:var(--text-primary);overflow-x:hidden;min-height:100vh;transition:background-color var(--transition-slow),color var(--transition-slow);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::selection{background:rgba(var(--color-rgb-primary),0.2);color:inherit}header{background:var(--vscode-sidebar);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:2147483647;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.header-content{display:flex;align-items:center;justify-content:space-between;padding:0 1rem;gap:0.75rem;min-height:var(--header-height)}.header-left,.header-right{display:flex;align-items:center;gap:0.5rem}.header-right{gap:8px;justify-content:flex-end}.header-center{flex:1;display:flex;justify-content:center;align-items:center;gap:12px}@media (min-width:769px){.header-left,.header-right{flex:1 1 0;min-width:0}.header-center{flex:0 0 auto;min-width:280px}}.logo{font-size:1.1rem;font-weight:600;color:var(--text-primary);letter-spacing:0;transition:color var(--transition-slow),opacity var(--transition-fast);user-select:text;cursor:pointer}.header-brand-logo{display:flex;align-items:center;justify-content:center;gap:0.5rem;white-space:nowrap;line-height:1;font-size:1.1rem;margin:0}.header-logo-image{display:block;width:clamp(34px,4.2vw,48px);height:auto;max-height:34px;object-fit:contain;user-select:none}.header-brand-logo picture{display:flex;align-items:center;flex-shrink:0}.header-brand-text{display:inline-flex;align-items:baseline;gap:0.28em;color:var(--text-primary);font-size:clamp(0.95rem,1.2vw,1.1rem);font-weight:500;letter-spacing:0;text-transform:none;user-select:text}.header-brand-primary{color:var(--primary);font-weight:600}.logo:hover{opacity:0.85}.btn-text-hidden{display:none}#settings-header-btn:hover svg{animation:settings-spin 0.6s ease}@keyframes settings-spin{0%{transform:rotate(0deg)}100%{transform:rotate(90deg)}}.btn,.demo-dropdown{height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:0.875rem;font-weight:500;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform 0.1s ease;border:none;cursor:pointer;background:transparent;color:var(--text-secondary)}.btn:hover,.demo-dropdown:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.btn{padding:0 16px;gap:8px}.btn-text{white-space:nowrap}.btn svg{width:18px;height:18px}.btn-primary{background:var(--primary);color:var(--primary-text);border:none;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:disabled{opacity:0.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary,.btn-success{background:transparent;color:var(--text-secondary);border:none;font-weight:500}.btn-secondary:hover,.btn-success:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.btn-home{background:transparent;color:var(--text-secondary);border:none;font-weight:500}.btn-home:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.icon-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);border:none;cursor:pointer;background:transparent;color:var(--text-secondary);padding:0}.icon-btn svg{width:18px;height:18px}.icon-btn:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.fix-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);z-index:10000;display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--vscode-sidebar);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:0.875rem;font-weight:500;line-height:1.55;max-width:min(720px,calc(100vw - 32px));width:max-content;opacity:0;pointer-events:none;transition:opacity 0.25s ease,transform 0.25s ease}.fix-toast-enter{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}.fix-toast-exit{opacity:0;transform:translateX(-50%) translateY(20px);pointer-events:none}.fix-toast-icon{width:22px;height:22px;flex-shrink:0;margin-top:1px}.fix-toast-text{flex:1;min-width:0;word-break:break-word}.fix-toast-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);cursor:pointer;padding:0;transition:color 0.15s ease,border-color 0.15s ease,background 0.15s ease}.fix-toast-close:hover{color:var(--text-primary);border-color:var(--text-secondary);background:rgba(var(--color-rgb-white),0.06)}.fix-toast-close svg{width:16px;height:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.clean-dropdown{position:relative;display:inline-flex;align-items:center}.clean-dropdown select{appearance:none;-webkit-appearance:none;background:transparent;color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:0 28px 0 12px;height:36px;font-size:0.8125rem;font-weight:500;cursor:pointer;outline:none;transition:all var(--transition-fast)}.clean-dropdown select option{background:var(--vscode-sidebar);color:var(--text-primary)}.clean-dropdown select:hover,.clean-dropdown select:focus{background:var(--vscode-line-bg);border-color:var(--border-color-hover)}.clean-dropdown svg{position:absolute;right:8px;width:14px;height:14px;pointer-events:none;color:var(--text-secondary);transition:color var(--transition-fast)}.clean-dropdown select:hover + svg,.clean-dropdown select:focus + svg{color:var(--text-primary)}.save-indicator{height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;gap:6px;font-size:0.75rem;font-weight:500;cursor:default;white-space:nowrap;background:transparent;color:var(--text-secondary)}.save-indicator.saved{color:var(--success)}.save-indicator svg{width:13px;height:13px;opacity:0.7}.header-btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent;border-radius:6px;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.header-btn-ghost svg{width:18px;height:18px;flex-shrink:0}.header-btn-ghost:hover{background:var(--vscode-line-bg);border-color:var(--border-color);color:var(--text-primary)}.header-btn-ghost:active{transform:scale(0.95)}.header-btn-files{background:var(--primary);color:var(--primary-text);border:none;border-radius:6px;padding:0 16px;gap:7px;font-weight:700;font-size:0.875rem;height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),transform 0.1s ease;white-space:nowrap}.header-btn-files:hover{background:var(--primary-hover);color:var(--primary-text)}.header-btn-files:active{transform:scale(0.97)}.header-btn-files.sidebar-active{background:var(--primary-hover);color:var(--primary-text)}.header-btn-files svg{width:16px;height:16px;flex-shrink:0}.header-divider{display:block;width:1px;height:22px;background:var(--border-color);margin:0 4px;flex-shrink:0;opacity:0.6}.header-dropdown-muted select{color:var(--text-secondary);border-color:transparent;background:transparent;font-size:0.8125rem}.header-dropdown-muted select:hover,.header-dropdown-muted select:focus{background:var(--vscode-line-bg);border-color:var(--border-color);color:var(--text-primary)}.btn-run-primary{background:var(--primary);color:var(--primary-text);border:none;font-weight:700;height:36px;padding:0 16px;gap:7px;border-radius:6px;font-size:0.875rem;letter-spacing:0.01em;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),transform 0.1s ease}.btn-run-primary:hover:not(:disabled){background:var(--primary-hover);color:var(--primary-text)}.btn-run-primary:active:not(:disabled){transform:scale(0.96)}.btn-run-primary:disabled{opacity:0.45;cursor:not-allowed;transform:none}.btn-run-primary svg{width:17px;height:17px}.btn-home-primary{background:var(--primary);color:var(--primary-text);border:none;height:36px;width:36px;padding:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),transform 0.1s ease}.btn-home-primary:hover:not(:disabled){background:var(--primary-hover);color:var(--primary-text)}.btn-home-primary:active:not(:disabled){transform:scale(0.96)}.btn-home-primary svg{width:17px;height:17px}#workspace{display:flex;height:calc(100vh - var(--header-height));gap:0;padding:0;overflow:hidden;background:var(--vscode-bg)}#editor-wrapper,#terminal-wrapper{flex:1 1 0;display:flex;flex-direction:column;background:var(--vscode-editor);border:1px solid var(--border-color);border-radius:0;box-shadow:none;transition:background-color 0.3s cubic-bezier(0.2,0.8,0.2,1),border-color 0.3s cubic-bezier(0.2,0.8,0.2,1),box-shadow 0.3s cubic-bezier(0.2,0.8,0.2,1);position:relative;overflow:hidden;min-width:0;min-height:0}#editor-wrapper{flex-grow:2}#terminal-wrapper{flex-grow:2}#editor-wrapper.active{border-color:var(--primary)!important;box-shadow:none!important}#terminal-wrapper.terminal-active{border-color:var(--success)!important;box-shadow:none!important}.fullscreen{position:fixed!important;top:0;left:0;width:100vw!important;height:100vh!important;z-index:2147483647;flex:none!important;border:none!important;border-radius:0!important}body.panel-fullscreen>header,body.panel-fullscreen>#mobile-tab-bar,body.panel-fullscreen>.sidebar-container,body.panel-fullscreen>#sidebar-overlay{display:none!important}.hidden{display:none!important}.panel-header{display:flex;align-items:center;justify-content:space-between;background:var(--vscode-sidebar);border-bottom:1px solid var(--border-color);height:44px;flex-shrink:0;transition:background-color var(--transition-slow),border-color var(--transition-slow)}.panel-header:has(.file-tabs){padding:0;padding-right:12px}.panel-header:not(:has(.file-tabs)){padding:0 14px}.panel-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:0.8125rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:0.05em;transition:color var(--transition-slow)}.panel-icon{width:16px;height:16px;color:var(--primary);transition:color var(--transition-slow)}.panel-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.panel-inline-label{font-size:0.75rem;font-weight:600;color:var(--text-secondary);white-space:nowrap}.panel-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;height:32px;background:transparent;border:1px solid transparent;border-radius:6px;font-size:0.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap}.panel-action-btn svg{width:14px;height:14px;flex-shrink:0}.panel-action-btn:hover{background:rgba(var(--color-rgb-primary),0.1);border-color:var(--primary);color:var(--primary)}#clear-btn:hover{background:rgba(var(--color-rgb-danger),0.1);border-color:var(--danger);color:var(--danger)}.vertical-separator{width:1px;height:20px;background:var(--border-color);margin:0 4px}.font-controls{display:flex;align-items:center;gap:0;margin:0;background:var(--vscode-line-bg);border:1px solid var(--border-color);border-radius:6px;padding:0}.resize-controls{display:flex;align-items:center;gap:6px}.font-size-display{padding:0 8px;font-size:0.75rem;font-weight:600;color:var(--text-primary);min-width:38px;text-align:center;border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);height:32px;display:flex;align-items:center;justify-content:center;user-select:none}.font-controls .panel-action-btn{border-radius:0;padding:0 8px;width:32px;height:32px;border:none;background:transparent}.text-action-btn{padding:0 10px;border-color:var(--border-color);background:var(--vscode-line-bg)}#terminal-wrapper .panel-title{text-transform:none;letter-spacing:0.02em}.font-controls .panel-action-btn:hover{background:var(--vscode-sidebar);color:var(--primary);z-index:1}.font-controls .panel-action-btn:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.font-controls .panel-action-btn:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}#fullscreen-editor-btn:hover,#fullscreen-terminal-btn:hover{background:rgba(var(--color-rgb-primary),0.1);border-color:var(--primary);color:var(--primary)}#editor{flex:1;width:100%;font-size:14px;background:var(--vscode-editor)!important;overflow:hidden;position:relative}.cm-editor{height:100%;background:var(--vscode-editor)!important;font-family:"JetBrains Mono","Fira Code",monospace}.cm-editor .cm-scroller{overflow:auto;font-family:inherit}.cm-editor .cm-content{caret-color:var(--primary)}.cm-editor .cm-cursor{border-left-color:var(--primary)}.cm-editor .cm-gutters{background:var(--vscode-sidebar);color:var(--text-secondary);border-right:1px solid var(--border-color)}.cm-editor .cm-activeLineGutter{background:var(--vscode-line-bg)}.cm-editor .cm-activeLine{background:var(--vscode-line-bg)}.cm-editor .cm-selectionBackground,.cm-editor.cm-focused .cm-selectionBackground,::selection{background:rgba(var(--color-rgb-primary),0.15)!important}.cm-editor .cm-selectionMatch{background:rgba(153,255,119,0.22)}.cm-editor .cm-selectionMatch-main{background:rgba(153,255,119,0.3)}.cm-editor .cm-matchingBracket{background:rgba(var(--color-rgb-primary),0.25);outline:1px solid rgba(var(--color-rgb-primary),0.4)}.cm-editor.cm-focused{outline:none}.cm-editor .cm-scroller::-webkit-scrollbar{width:6px;height:6px}.cm-editor .cm-scroller::-webkit-scrollbar-track{background:transparent}.cm-editor .cm-scroller::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.cm-editor .cm-scroller::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.cm-tooltip{background:var(--vscode-editor)!important;border:1px solid var(--border-color)!important;border-radius:0!important;box-shadow:0 4px 12px rgba(0,0,0,0.15)!important;color:var(--text-primary)!important;overflow:hidden}.cm-tooltip-autocomplete{padding:0!important}.cm-tooltip-autocomplete>ul{font-family:"JetBrains Mono","Fira Code",monospace;font-size:0.85rem!important;max-height:250px!important}.cm-tooltip-autocomplete>ul>li{padding:6px 12px!important;border-radius:0!important;border-bottom:none!important;transition:none!important;display:flex!important;align-items:center;gap:8px;line-height:1.4!important;border-left:2px solid transparent!important;margin:0!important;outline:none!important}.cm-tooltip-autocomplete>ul>li[aria-selected="true"]{background:var(--vscode-line-bg)!important;color:var(--primary)!important;border-left:2px solid var(--primary)!important;border-radius:0!important}.cm-completionMatchedText{text-decoration:none!important;font-weight:600!important;color:var(--primary)!important}.cm-completionDetail{margin-left:auto;font-size:0.85em;color:var(--text-muted);font-style:normal!important}.cm-tooltip.cm-completionInfo{padding:12px!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-size:0.85rem;line-height:1.5;background:var(--vscode-editor)!important;border:1px solid var(--border-color)!important;border-radius:0!important;box-shadow:0 4px 12px rgba(0,0,0,0.15)!important;margin-left:4px}.cm-func-tooltip{padding:10px 12px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.tooltip-signature{font-family:"JetBrains Mono","Fira Code",monospace;font-size:0.85rem;font-weight:600;color:var(--text-primary);margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.tooltip-warning{color:var(--warning);font-size:0.8rem;font-weight:500;margin-bottom:6px;display:flex;align-items:center;gap:4px}.tooltip-description{font-size:0.85rem;color:var(--text-secondary);margin-bottom:8px;line-height:1.4}.tooltip-params{display:flex;flex-direction:column;gap:4px}.tooltip-param{font-size:0.8rem;color:var(--text-muted);display:flex;align-items:flex-start;gap:6px}.tooltip-param-active{color:var(--text-primary);background:var(--vscode-line-bg);padding:2px 6px;border-radius:0}.tooltip-param-name{font-family:"JetBrains Mono","Fira Code",monospace;font-weight:500;color:var(--text-primary)}.tooltip-param-arrow{opacity:0.4}.tooltip-param-desc{flex:1}.editor-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;background:var(--vscode-sidebar);border-top:1px solid var(--border-color);font-size:0.75rem;color:var(--text-muted);min-height:32px;flex-shrink:0;transition:background-color var(--transition-slow),border-color var(--transition-slow)}#dos-iframe{border-radius:4px;width:100%;height:100%;background:transparent;cursor:pointer;display:block;border:0;flex:1 1 auto;min-width:0;min-height:0;position:relative;z-index:2;outline:none}.terminal-canvas-wrap{flex:1 1 auto;display:flex;align-items:center;justify-content:center;background:#000;position:relative;min-height:0;overflow:hidden}#terminal-wrapper.fullscreen #dos-iframe{border-radius:4px;width:100%;height:100%;max-width:none;max-height:none;transform-origin:center center}.keyboard-blocker{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;display:flex;align-items:flex-start;justify-content:center;z-index:10;opacity:0;pointer-events:none;transition:opacity var(--transition-normal);padding-top:30px}.keyboard-blocker.active{opacity:1;pointer-events:all;cursor:pointer}.blocker-message{display:flex;align-items:center;gap:10px;padding:10px 20px;background:var(--vscode-sidebar);border:1px solid var(--border-color);border-radius:24px;font-weight:500;font-size:0.95rem;color:var(--text-secondary);transition:all var(--transition-normal)}.blocker-message:hover{background:var(--vscode-line-bg);border-color:var(--primary);color:var(--primary)}.blocker-message svg{width:20px;height:20px;color:var(--primary)}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--vscode-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:20;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.loading-overlay.active{opacity:1;pointer-events:all}.spinner{width:38px;height:38px;border:3px solid rgba(var(--color-rgb-primary),0.2);border-top-color:var(--primary);border-radius:50%;animation:spin 0.7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:0.95rem;font-weight:600;color:var(--text-primary);transition:color var(--transition-slow)}.loading-progress{width:280px;height:3px;background:rgba(128,128,128,0.2);border-radius:2px;overflow:hidden;position:relative}.loading-progress-bar{position:absolute;top:0;left:0;height:100%;background:var(--primary);width:0%;transition:width var(--transition-normal)}#output-panel{position:absolute;bottom:0;left:0;width:100%;height:50%;background:var(--vscode-bg);border-top:1px solid var(--border-color);display:flex;flex-direction:column;z-index:20;opacity:0;visibility:hidden;pointer-events:none;transition:transform 0.3s ease,opacity 0.3s ease,visibility 0.3s ease}#output-panel.visible{opacity:1;visibility:visible;pointer-events:auto}#output-panel.expanded{height:100%}.output-header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--vscode-sidebar);border-bottom:1px solid var(--border-color);flex-shrink:0;gap:10px}.output-title{display:flex;align-items:center;gap:8px;font-size:0.8125rem;font-weight:600;color:var(--danger);letter-spacing:0.02em;white-space:nowrap}.output-title svg{flex-shrink:0}.output-error-icon{width:16px;height:16px;color:var(--danger)}.output-actions{display:flex;align-items:center;gap:6px}.copy-error-btn{height:32px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;font-size:0.8125rem;font-weight:700;background:transparent;color:var(--danger);border:1px solid var(--danger);border-radius:6px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform 0.1s ease;white-space:nowrap}.copy-error-btn:hover{background:var(--danger);border-color:var(--danger);color:#fff}.copy-error-btn:active{transform:scale(0.96)}.copy-error-btn.copied{background:var(--success);border-color:var(--success);color:var(--primary-text)}.copy-error-btn svg{width:14px;height:14px;flex-shrink:0}.copy-error-btn .icon-check{display:none}.copy-error-btn.copied .icon-copy{display:none}.copy-error-btn.copied .icon-check{display:inline-block}.expand-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.expand-btn:hover{background:var(--vscode-line-bg);border-color:var(--primary);color:var(--primary)}.expand-btn svg{width:13px;height:13px;transition:transform var(--transition-fast)}.expand-btn.expanded svg{transform:rotate(180deg)}.close-output-btn{height:32px;width:32px;min-height:unset;border:1px solid var(--border-color);background:transparent;border-radius:6px}.close-output-btn:hover{background:var(--vscode-line-bg);border-color:var(--danger);color:var(--danger)}.close-output-icon{width:14px;height:14px}.output-content{flex:1;padding:12px 16px;font-family:"JetBrains Mono","Consolas",monospace;font-size:0.8125rem;line-height:1.7;overflow-y:auto;white-space:pre-wrap;word-break:break-word;color:var(--text-primary);background:var(--vscode-bg)}.fix-ai-explanation{border-top:1px solid var(--border-color);background:rgba(var(--color-rgb-primary),0.05);padding:12px 16px 14px}.fix-ai-explanation-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:0.8125rem;font-weight:700;color:var(--text-primary)}.fix-ai-explanation-body{color:var(--text-secondary);font-size:0.8125rem;line-height:1.65;white-space:pre-wrap;word-break:break-word}.output-content::-webkit-scrollbar{width:6px}.output-content::-webkit-scrollbar-track{background:transparent}.output-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.output-content::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.output-error{color:var(--danger);font-weight:500}.output-success{color:var(--success)}#terminal-wrapper.has-panel .terminal-canvas-wrap{height:50%;flex:0 0 50%}.progress-bar{position:absolute;top:0;left:0;right:0;height:2px;background:var(--border-color);z-index:1000}.progress-bar.hidden{display:none}.progress-fill{height:100%;width:0%;background:var(--primary);transition:width var(--transition-normal)}.progress-fill.indeterminate{width:30%;animation:progress-slide 1s ease-in-out infinite}@keyframes progress-slide{0%{transform:translateX(-100%)}100%{transform:translateX(400%)}}.status-message{display:flex;align-items:center;gap:6px;padding:5px 12px;background:var(--primary);color:var(--primary-text);font-size:0.75rem;font-weight:600;border-radius:6px;animation:fade-in var(--transition-normal)}.status-message.hidden{display:none}.status-message.error{background:var(--danger);color:white}@keyframes fade-in{from{opacity:0}to{opacity:1}}.sidebar-container{display:flex;flex-shrink:0;height:100%;gap:4px;padding:0}.file-tabs{display:flex;align-items:center;gap:0;flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.file-tabs::-webkit-scrollbar{display:none}.file-tab{display:flex;align-items:center;gap:7px;padding:0 16px;height:44px;font-size:0.8125rem;font-weight:500;color:var(--text-secondary);background:var(--vscode-sidebar);border:none;border-right:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);white-space:nowrap;position:relative;min-width:max-content}.file-tab:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.file-tab.active{background:var(--vscode-editor);color:var(--text-primary)}.file-tab.active::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--primary)}.file-tab svg{width:15px;height:15px;flex-shrink:0}.file-tab-name{font-family:"JetBrains Mono",monospace;letter-spacing:-0.02em;overflow:visible;text-overflow:clip}.file-tab-close{width:17px;height:17px;display:flex;align-items:center;justify-content:center;border-radius:3px;opacity:0;transition:all var(--transition-fast);margin-left:3px}.file-tab:hover .file-tab-close{opacity:0.5}.file-tab-close:hover{background:rgba(var(--color-rgb-danger),0.15);color:var(--danger);opacity:1!important}.file-tab-close svg{width:11px;height:11px}.editor-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:var(--vscode-editor);z-index:50;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.editor-loading-card{min-width:min(320px,calc(100% - 32px));max-width:420px;padding:22px 24px;border:1px solid var(--border-color);border-radius:8px;background:color-mix(in srgb,var(--vscode-editor) 92%,var(--vscode-bg));box-shadow:0 16px 40px rgba(0,0,0,0.18);display:flex;flex-direction:column;align-items:center;gap:14px}.editor-loading-overlay.hidden{opacity:0;visibility:hidden;pointer-events:none}.editor-loading-spinner{width:42px;height:42px;border:3px solid rgba(var(--color-rgb-primary),0.2);border-top-color:var(--primary);border-radius:50%;animation:spin 0.7s linear infinite}.editor-loading-text{font-size:0.95rem;font-weight:600;color:var(--text-primary);text-align:center}.editor-loading-subtext{font-size:0.8125rem;font-weight:500;color:var(--text-secondary);text-align:center;max-width:28ch}.terminal-idle-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;background:var(--vscode-bg);color:var(--text-secondary);text-align:center;z-index:1}.terminal-idle-state.hidden{display:none}.terminal-idle-title{font-size:0.95rem;font-weight:600;color:var(--text-primary)}.terminal-idle-copy{max-width:34ch;font-size:0.8125rem;line-height:1.5}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:1100;padding:14px}.modal-overlay.hidden{display:none}.modal{width:min(460px,100%);background:var(--vscode-sidebar);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);display:flex;flex-direction:column;gap:12px;padding:18px}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal-header h3{font-size:0.9rem;font-weight:700;color:var(--text-primary)}.modal-body{display:flex;flex-direction:column;gap:8px}.modal-body label{font-size:0.7rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:0.06em}.modal-body input{height:36px;border-radius:6px;border:1px solid var(--border-color);background:var(--vscode-editor);color:var(--text-primary);padding:0 10px;font-family:"JetBrains Mono",monospace;font-size:0.875rem}.modal-body input:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.modal-body textarea{border-radius:6px;border:1px solid var(--border-color);background:var(--vscode-editor);color:var(--text-primary);padding:10px;font-family:"JetBrains Mono",monospace;font-size:0.875rem;line-height:1.6;resize:vertical;min-height:120px}.modal-body textarea:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.modal-hint{font-size:0.85rem;color:var(--text-muted);line-height:1.4}.modal-input-row{display:flex;gap:8px}.modal-input-field{flex:1;min-width:0}.modal-error-text{color:var(--danger);display:none}.modal-status{border-radius:6px;padding:10px 12px;font-size:0.78rem;line-height:1.5}.modal-status.success{background:rgba(var(--color-rgb-primary),0.1);border:1px solid rgba(var(--color-rgb-primary),0.25);color:var(--success)}.modal-status.error{background:rgba(var(--color-rgb-danger),0.1);border:1px solid rgba(var(--color-rgb-danger),0.25);color:var(--danger)}.modal-actions{display:flex;gap:8px;justify-content:flex-end}.modal-btn-cancel{background:var(--danger);color:#ffffff;border:1px solid var(--danger);border-radius:6px;font-weight:500;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);padding:0 16px;height:36px;cursor:pointer;font-family:inherit;font-size:0.85rem}.modal-btn-cancel:hover{opacity:0.85;filter:brightness(0.9)}.modal-btn-submit{background:var(--primary);color:var(--primary-text);border:1px solid var(--primary);border-radius:6px;font-weight:600;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);padding:0 16px;height:36px;cursor:pointer;font-family:inherit;font-size:0.85rem}.modal-btn-submit:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.modal-btn-submit:disabled{opacity:0.5;cursor:not-allowed}#floating-run-btn{position:fixed;z-index:900;width:52px;height:52px;border-radius:50%;background:var(--primary,#00ff88);border:none;cursor:grab;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,0.28);transition:background 0.15s,transform 0.15s;user-select:none;touch-action:none}#floating-run-btn:hover{background:var(--primary-hover,#00e87a);transform:scale(1.07)}#floating-run-btn:active{cursor:grabbing;transform:scale(0.95)}#floating-run-btn svg{width:24px;height:24px;color:var(--primary-text);flex-shrink:0;pointer-events:none}#floating-run-btn.is-running{background:#e03b3b;box-shadow:0 2px 8px rgba(0,0,0,0.28)}#floating-run-btn.is-running:hover{background:#c93232}#floating-run-btn::after{content:'Compile & Run';position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(3px);background:#1a1f2e;color:#e8f0fe;font-size:0.68rem;font-weight:600;font-family:inherit;white-space:nowrap;padding:4px 9px;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,0.3);border:1px solid rgba(255,255,255,0.08);opacity:0;pointer-events:none;transition:opacity 0.15s,transform 0.15s;letter-spacing:0.02em}#floating-run-btn:hover::after{opacity:1;transform:translateX(-50%) translateY(0)}#floating-run-btn-tooltip{position:fixed;background:#1a1f2e;border:1px solid rgba(var(--color-rgb-primary),0.25);color:#d8e6f3;font-size:0.78rem;font-weight:500;font-family:inherit;line-height:1.55;padding:10px 13px;border-radius:6px;white-space:normal;z-index:901;pointer-events:none;opacity:0;transform:translateY(-4px) scale(0.97);transition:opacity 0.22s ease,transform 0.22s ease;box-shadow:0 8px 24px rgba(0,0,0,0.35),0 1px 4px rgba(0,0,0,0.2);max-width:224px;letter-spacing:0.01em}#floating-run-btn-tooltip::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:rgba(var(--color-rgb-primary),0.25);filter:drop-shadow(0 1px 0 #1a1f2e)}#floating-run-btn-tooltip::before{content:'';position:absolute;top:calc(100% - 1px);left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#1a1f2e;z-index:1}#floating-run-btn-tooltip strong{color:var(--primary,#00ff88);font-weight:700}#floating-run-btn-tooltip.visible{opacity:1;transform:translateY(0) scale(1)}.vertical-splitter{width:6px;margin:0 -3px;position:relative;background-color:transparent;cursor:col-resize;z-index:10;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast);flex-shrink:0}.vertical-splitter::before{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:2px;background-color:transparent;transition:background-color var(--transition-fast),width var(--transition-fast),box-shadow var(--transition-fast)}.vertical-splitter:hover::before,.vertical-splitter.dragging::before{background-color:var(--primary);box-shadow:none}.splitter-handle{display:none!important}.sidebar-container:has(#sidebar.collapsed) + #splitter-sidebar{display:none!important}.error-ad-slot{display:none;padding:8px 0;border-top:1px solid rgba(var(--color-rgb-danger),0.12);overflow:hidden;text-align:center}.error-ad-slot.visible{display:flex;justify-content:center;align-items:center}.activity-bar{display:none}.activity-bar-top,.activity-bar-bottom,.activity-bar-separator,.activity-bar-btn{display:none}#sidebar{width:262px;min-width:262px;background:var(--vscode-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;transition:width 0.3s ease,min-width 0.3s ease,opacity 0.3s ease;z-index:90;overflow:hidden;overflow-y:auto;min-height:0}#sidebar.collapsed{width:0;min-width:0;border:none;opacity:0}.sidebar-header{padding:12px 16px;font-size:0.7rem;font-weight:700;color:var(--text-secondary);letter-spacing:0.05em;text-transform:uppercase;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color);min-height:46px;background:var(--vscode-sidebar)}.sidebar-header-left{display:flex;align-items:center;gap:8px}.sidebar-header-left>span{color:var(--text-secondary)}.sidebar-collapse-btn,.sidebar-action-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:4px;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.sidebar-collapse-btn:hover,.sidebar-action-btn:hover{background:rgba(var(--color-rgb-white),0.08);color:var(--text-primary)}.sidebar-collapse-btn svg,.sidebar-action-btn svg{width:16px;height:16px}.sidebar-actions{display:flex;gap:6px;align-items:center}.explorer-actions{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-color)}.explorer-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border-radius:6px;font-size:0.82rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}#new-folder-btn{color:#519aba;background:rgba(81,154,186,0.08);border:1px solid rgba(81,154,186,0.15)}#new-folder-btn:hover{background:rgba(81,154,186,0.15);border-color:rgba(81,154,186,0.3)}#new-file-btn{color:var(--primary);background:rgba(var(--color-rgb-primary),0.08);border:1px solid rgba(var(--color-rgb-primary),0.15)}#new-file-btn:hover{background:rgba(var(--color-rgb-primary),0.15);border-color:rgba(var(--color-rgb-primary),0.3)}.explorer-action-btn svg{width:15px;height:15px}.file-explorer{flex:1;overflow-y:auto;padding:0;display:flex;flex-direction:column}.file-explorer::-webkit-scrollbar{width:6px}.file-explorer::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.file-explorer::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.files-header{display:flex;align-items:center;padding:16px 14px 10px;user-select:none;margin-bottom:4px}.files-header-chevron{display:none}.files-title{font-size:11px;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.12em;position:relative;display:flex;align-items:center}.files-title::after{display:none}.files-count{display:none}.file-tab-icon{color:#519aba}.file-list-flat{flex:1;display:flex;flex-direction:column;padding:0 6px 12px 6px;gap:2px}.folder-group{display:flex;flex-direction:column;gap:2px}.folder-group-header{display:flex;align-items:center;justify-content:space-between;min-height:32px;height:32px;padding:0 6px;margin:0;border-radius:6px;font-size:0.9rem;font-weight:700;color:var(--text-primary);cursor:pointer;border:1px solid transparent;background:transparent;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.folder-group-header:hover{background:rgba(var(--color-rgb-white),0.05);color:var(--text-primary)}.folder-group-header.selected{color:var(--primary);font-weight:700}.folder-group-header.selected .folder-group-title svg,.folder-group-header.selected .folder-chevron{color:var(--primary)}.folder-group-header:focus-visible{outline:1px solid var(--primary);outline-offset:-1px}.folder-group-title{display:flex;align-items:center;gap:5px;min-width:0;flex:1}.folder-group-title span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-sans,system-ui,-apple-system,sans-serif);line-height:32px;display:block}.folder-chevron{font-size:10px;color:inherit;width:16px;display:flex;justify-content:center;align-items:center;transition:transform 0.1s}.folder-group-title svg{width:15px;height:15px;flex-shrink:0;color:var(--text-muted)}.folder-group-files{display:flex;flex-direction:column;padding:0;margin:0;gap:1px}.folder-group.collapsed .folder-group-files{display:none}.folder-group.collapsed .folder-chevron{transform:rotate(-90deg)}.folder-group.collapsed .folder-group-header{border-bottom-color:transparent}.folder-group-empty{padding:4px 8px 6px 28px;font-size:0.78rem;color:var(--text-muted);font-style:italic}.folder-file-count{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;border-radius:999px;background:rgba(var(--color-rgb-white),0.06);color:var(--text-muted);font-size:10px;font-weight:600}.folder-action-btn{width:20px;height:20px;border:0;border-radius:4px;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.folder-group-header:hover .folder-action-btn{opacity:1}.folder-action-btn:hover{background:rgba(var(--color-rgb-danger),0.1);color:var(--danger)}.folder-action-btn.folder-rename-btn:hover{background:rgba(var(--color-rgb-primary),0.1);color:var(--primary)}.folder-action-btn svg{width:13px;height:13px}.file-item{display:flex;align-items:center;min-height:32px;height:32px;gap:10px;padding:0 6px 0 32px;margin:0;cursor:pointer;color:var(--text-secondary);font-size:0.9rem;border:1px solid transparent;border-radius:6px;position:relative;background:transparent;user-select:none;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.file-item:hover{background:rgba(var(--color-rgb-white),0.05);color:var(--text-primary)}.file-item.active{background:rgba(var(--color-rgb-primary),0.1);color:var(--primary)}.file-item:focus-visible{outline:1px solid var(--primary);outline-offset:-1px}.file-item .file-icon{width:16px;height:16px;flex-shrink:0;stroke-width:1.5;transition:transform var(--transition-fast),color var(--transition-fast)}.file-item .file-icon.icon-cpp{color:#519aba}.file-item .file-icon.icon-header{color:#a074c4}.file-item .file-icon.icon-text{color:#8b949e}.file-item .file-icon.icon-default{color:#7d8590}.file-item.active .file-icon{color:var(--primary)!important}.file-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-item .file-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;font-family:var(--font-sans,system-ui,-apple-system,sans-serif);font-size:0.9rem;line-height:32px;letter-spacing:0;min-width:0;display:block}.file-meta{font-size:0.65rem;color:var(--text-muted);letter-spacing:0.02em}.file-item.active .file-name{font-weight:600}.file-actions{display:none;position:absolute;right:4px;align-items:center;gap:4px;padding-left:6px;background:var(--vscode-sidebar);border-radius:4px}.file-item:hover .file-actions{display:flex}.file-item:hover .file-actions::before{display:none}.file-action-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);padding:0;flex-shrink:0}.file-action-btn svg{width:14px;height:14px}.file-action-btn:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.file-action-btn.file-rename-btn:hover{color:var(--primary)}.file-list-empty{padding:12px 14px;font-size:0.75rem;color:var(--text-muted)}.explorer-loading{display:flex;flex-direction:column;gap:10px;padding:14px 16px 10px;color:var(--text-muted);font-size:0.75rem;letter-spacing:0.02em}.explorer-loading-spinner{width:100%;height:2px;background:var(--vscode-border);border-radius:2px;overflow:hidden;position:relative}.explorer-loading-spinner::after{content:'';position:absolute;top:0;left:-40%;height:100%;width:40%;background:var(--primary);border-radius:2px;animation:explorer-bar 1.4s ease-in-out infinite}@keyframes explorer-bar{0%{left:-40%;width:40%}50%{left:30%;width:60%}100%{left:110%;width:40%}}@keyframes explorer-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.file-download-btn:hover{background:rgba(var(--color-rgb-primary),0.12);color:var(--primary)}.file-delete-btn:hover{background:rgba(var(--color-rgb-danger),0.12);color:var(--danger)}.cloud-promo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;height:100%;width:100%;padding:24px 0;box-sizing:border-box}.cloud-promo-compact{flex-grow:1}.cloud-promo-inner{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 20px;text-align:center;width:100%;box-sizing:border-box}.cloud-promo-badge{background:rgba(var(--color-rgb-primary),0.05);border:1px solid rgba(var(--color-rgb-primary),0.15);width:52px;height:52px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all 0.25s cubic-bezier(0.4,0,0.2,1);margin-bottom:4px}.cloud-promo:hover .cloud-promo-badge{transform:translateY(-2px);border-color:var(--primary);background:rgba(var(--color-rgb-primary),0.08)}.cloud-promo-icon{display:block;width:30px;height:30px;transition:transform 0.25s cubic-bezier(0.4,0,0.2,1)}.cloud-promo:hover .cloud-promo-icon{transform:scale(1.05)}.cloud-promo-tag{display:inline-flex;align-items:center;font-size:0.65rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--primary);transition:color var(--transition-fast)}.cloud-promo:hover .cloud-promo-tag{color:var(--primary-hover)}.cloud-promo-title{margin:0;font-size:1.05rem;font-weight:600;color:var(--text-primary);line-height:1.35;letter-spacing:-0.01em}.cloud-title-accent{color:var(--primary);font-weight:600}.cloud-promo-subtitle{margin:0;font-size:0.78rem;color:var(--text-muted);line-height:1.45;font-weight:400}.auth-section{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 16px;width:100%;box-sizing:border-box}.google-btn-render{display:flex;justify-content:center;width:100%;min-height:44px}.google-btn-render div,.google-btn-render iframe,.google-btn-render div::before,.google-btn-render div::after{box-sizing:content-box!important}.google-btn-render>div{}.google-btn-render iframe{display:block!important;border:none!important}.google-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 14px;background:#ffffff;color:#1f1f1f;border:1px solid #dadce0;border-radius:6px;font-size:0.8125rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);white-space:normal;text-align:center}.google-btn:hover{background:#f8faff;box-shadow:none}.google-icon{width:18px;height:18px}.cloud-promo-features{list-style:none;padding:0 20px;margin:2px 0;display:flex;flex-direction:column;gap:6px;align-self:center;width:fit-content;box-sizing:border-box}.cloud-promo-features li{display:flex;align-items:center;gap:8px;font-size:0.75rem;color:var(--text-muted);font-weight:400;text-align:left}.cloud-promo-feature-icon{width:12px;height:12px;color:var(--primary);opacity:0.85;flex-shrink:0}.auth-hint{display:block;font-size:0.72rem;color:var(--text-muted);margin-top:-2px;font-weight:400}.user-profile{padding:8px;border-top:1px solid var(--border-color);margin-top:auto;position:relative;flex-shrink:0}.user-profile-btn{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:rgba(var(--color-rgb-white),0.03);border:1px solid rgba(var(--color-rgb-white),0.06);border-radius:6px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);text-align:left}.user-profile-btn:hover{background:var(--vscode-line-bg);border-color:var(--border-color)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;color:var(--primary-text);font-weight:600;font-size:0.75rem;flex-shrink:0}.user-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.user-info{flex:1;min-width:0}.user-name{font-size:0.85rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:0.70rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-profile-dropdown{position:absolute;bottom:100%;left:10px;right:10px;background:var(--vscode-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:none;padding:4px;display:none;z-index:100}.user-profile-dropdown.open{display:block}.dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 10px;width:100%;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);font-size:0.8125rem;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.dropdown-item:hover{background:var(--vscode-line-bg);color:var(--text-primary)}.dropdown-item.danger:hover{background:rgba(var(--color-rgb-danger),0.1);color:var(--danger)}.dropdown-item svg{width:15px;height:15px}#sidebar-collapse-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--color-rgb-primary),0.1);color:var(--primary);border:1px solid rgba(var(--color-rgb-primary),0.2);border-radius:6px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}#sidebar-collapse-btn svg{width:16px;height:16px;transform:translateX(-0.5px)}#sidebar-collapse-btn:hover{background:rgba(var(--color-rgb-primary),0.2);color:var(--primary-hover);border-color:var(--primary)}.sidebar-ad-slot{margin:12px 0 0;padding:0 4px;overflow:hidden;text-align:center}.settings-panel{flex:1;display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;gap:0}.settings-panel::-webkit-scrollbar{width:6px}.settings-panel::-webkit-scrollbar-thumb{background:transparent;border-radius:4px;border:2px solid var(--vscode-sidebar)}.settings-panel:hover::-webkit-scrollbar-thumb{background:var(--border-color)}.settings-panel::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.settings-section{padding:12px 16px;border-bottom:1px solid transparent}.settings-section:not(:last-child){margin-bottom:4px}.settings-section-title{display:flex;align-items:center;gap:8px;font-size:0.75rem;font-weight:600;color:var(--text-primary);margin-bottom:12px}.settings-section-title svg{width:14px;height:14px;color:var(--text-muted);flex-shrink:0}.settings-select{width:100%;height:32px;padding:0 10px;background:var(--vscode-editor);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:0.8125rem;font-family:inherit;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='%23a0a0a0'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}.settings-select:hover{border-color:var(--text-muted)}.settings-select:focus-visible{outline:none;border-color:var(--primary)}.settings-select option{background:var(--vscode-editor);color:var(--text-primary);padding:8px}.settings-font-size-control{display:flex;align-items:center;gap:6px}.settings-stepper-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--vscode-editor);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:1.1rem;line-height:1;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast);flex-shrink:0}.settings-stepper-btn:hover{background:var(--vscode-line-bg);color:var(--text-primary);border-color:var(--text-muted)}.settings-stepper-value{font-size:0.8125rem;font-weight:600;color:var(--text-primary);min-width:20px;text-align:center;font-family:"JetBrains Mono",monospace;background:var(--vscode-editor);border:1px solid var(--border-color);border-radius:6px;padding:2px 6px;display:inline-flex;align-items:center;justify-content:center;height:24px}.settings-range{flex:1 1 auto;min-width:0;-webkit-appearance:none;appearance:none;height:4px;background:var(--border-color);border-radius:2px;outline:none;cursor:pointer;margin:0 4px}.settings-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.settings-range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--primary);cursor:pointer;border:none;transition:transform var(--transition-fast)}.settings-toggle-group{display:flex;flex-direction:column;gap:4px}.settings-toggle{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;margin:0 -8px;cursor:pointer;border-radius:6px;transition:background var(--transition-fast)}.settings-toggle:hover{background:rgba(var(--color-rgb-white),0.03)}.settings-toggle-label{font-size:0.8125rem;font-weight:500;color:var(--text-secondary);transition:color var(--transition-fast)}.settings-toggle:hover .settings-toggle-label{color:var(--text-primary)}.settings-switch{position:relative;width:32px;height:18px;flex-shrink:0}.settings-switch input{opacity:0;width:0;height:0;position:absolute}.settings-switch-slider{position:absolute;inset:0;background:var(--border-color);border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.settings-switch-slider::before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:14px;height:14px;border-radius:50%;background:var(--text-primary);transition:all cubic-bezier(0.4,0,0.2,1) 0.2s;box-shadow:0 1px 2px rgba(0,0,0,0.2)}.settings-switch input:checked+.settings-switch-slider{background:var(--primary)}.settings-switch input:checked+.settings-switch-slider::before{transform:translateY(-50%) translateX(14px);background:#ffffff}.settings-reset-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:calc(100% - 32px);margin:16px;padding:10px 16px;background:rgba(var(--color-rgb-danger),0.05);border:1px solid rgba(var(--color-rgb-danger),0.15);border-radius:6px;color:var(--danger);font-size:0.8125rem;font-weight:600;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.settings-reset-btn svg{width:14px;height:14px}.settings-reset-btn:hover{background:rgba(var(--color-rgb-danger),0.12);border-color:rgba(var(--color-rgb-danger),0.35);color:var(--danger)}.mobile-tab-bar{display:none}.mobile-menu-shortcuts{display:none}@media (max-width:1024px){.header-content{padding:0.6rem 1rem;gap:0.6rem}.logo{font-size:0.9rem}.header-logo-image{width:34px;max-height:28px}.header-brand-text{font-size:0.92rem}.demo-dropdown{min-width:150px}#save-text{display:none}.save-indicator{padding:0 4px}}@media (max-width:768px){:root{--header-height:56px;--tab-bar-height:50px}header{border-bottom:none;box-shadow:none}.header-content{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;min-height:var(--header-height);background:var(--vscode-sidebar)}.header-left{display:flex!important;align-items:center;gap:8px}.header-center{display:flex!important;align-items:center;gap:8px;flex:1;justify-content:flex-end}.header-brand-logo{display:none!important}.header-right{display:none!important}.header-divider{display:none!important}#run-btn{order:5;flex:1 1 0;width:100%;height:38px;font-size:0.875rem;border-radius:6px;letter-spacing:0.01em;justify-content:center;min-width:0;box-shadow:none}#back-btn{order:1}#files-header-btn{order:2}#settings-header-btn,#save-btn,#theme-toggle-btn{display:none!important}.clean-dropdown,.demo-selector,.save-indicator{display:none!important}#run-btn svg{width:14px;height:14px}.logo-mobile{display:none!important}.header-left .btn-text-desktop,.header-right .btn-text-desktop,.header-left .btn-text:not(.btn-text-mobile),.header-right .btn-text:not(.btn-text-mobile){display:none!important}#files-header-btn{display:inline-flex!important;height:38px;padding:0 16px!important;gap:6px;justify-content:center;align-items:center;border-radius:6px;font-weight:600;font-size:0.95rem;border:1px solid var(--border-color)!important;background:transparent!important;color:var(--text-secondary)!important}#files-header-btn .btn-text{display:inline!important}#back-btn{display:inline-flex!important;width:38px!important;height:38px!important}#run-btn .btn-text-mobile{display:inline!important;font-weight:700}#run-btn .btn-text-desktop{display:none!important}#save-btn,#settings-header-btn,#theme-toggle-btn{display:none!important}#save-btn svg,#settings-header-btn svg{width:18px;height:18px}#save-btn .btn-text,#settings-header-btn .btn-text{display:none!important}#files-header-btn svg,#back-btn svg{width:18px;height:18px}#files-header-btn:hover{background:var(--vscode-line-bg)!important;color:var(--text-primary)!important;border-color:var(--border-color-hover)!important}.mobile-tab-bar{display:flex!important;align-items:center;gap:6px;height:var(--tab-bar-height);padding:6px 10px;background:var(--vscode-sidebar);border-bottom:none;box-shadow:0 8px 24px rgba(0,0,0,0.35);position:sticky;top:var(--header-height);z-index:99}.mobile-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;height:36px;background:var(--vscode-line-bg);border:1px solid transparent;border-radius:6px;color:var(--text-muted);font-size:0.78rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);position:relative}.mobile-tab svg{width:16px;height:16px;flex-shrink:0}.mobile-tab.active{background:rgba(var(--color-rgb-primary),0.16);border-color:rgba(var(--color-rgb-primary),0.45);color:var(--primary)}.mobile-tab.active::after{display:none}.mobile-tab:not(.active):hover{background:var(--vscode-line-bg);color:var(--text-secondary)}#workspace{flex-direction:column;height:auto;min-height:calc(100dvh - var(--header-height) - var(--tab-bar-height));gap:0;padding:0;overflow:hidden}#floating-run-btn,#floating-run-btn-tooltip{display:none!important}.vertical-splitter{display:none!important}.activity-bar{display:none}.fullscreen{top:0!important;height:100vh!important}#editor-wrapper,#terminal-wrapper{border-radius:0;border:none;border-bottom:1px solid var(--border-color);box-shadow:none;height:calc(100dvh - var(--header-height) - var(--tab-bar-height));max-height:calc(100dvh - var(--header-height) - var(--tab-bar-height));flex:none;width:100%;min-height:0;overflow:hidden;display:flex!important}#terminal-wrapper .terminal-canvas-wrap{flex:1 1 auto;min-height:0;overflow:hidden}body:not(.mobile-tab-output) #editor-wrapper{display:flex!important}body:not(.mobile-tab-output) #terminal-wrapper{display:none!important}body.mobile-tab-output #editor-wrapper{display:none!important}body.mobile-tab-output #terminal-wrapper{display:flex!important}body:has(#sidebar.open) #editor-wrapper,body:has(#sidebar.open) #terminal-wrapper,body.sidebar-open-mobile #editor-wrapper,body.sidebar-open-mobile #terminal-wrapper{display:none!important}body:has(#sidebar.open) .sidebar-container,body.sidebar-open-mobile .sidebar-container{display:flex!important;position:relative!important;top:0!important;left:0!important;min-height:calc(100dvh - var(--header-height) - var(--tab-bar-height))!important;height:auto!important;z-index:10;transform:none!important;width:100%}body:has(#sidebar.open) #sidebar,body.sidebar-open-mobile #sidebar{width:100%!important;transform:translateX(0)!important;box-shadow:none!important}.sidebar-container{display:none;min-height:calc(100dvh - var(--header-height) - var(--tab-bar-height))}#sidebar{width:100%;min-height:calc(100dvh - var(--header-height) - var(--tab-bar-height));height:auto;box-shadow:none;transform:translateX(0);overflow-y:auto;-webkit-overflow-scrolling:touch}#sidebar.open{transform:translateX(0)}#sidebar.collapsed{transform:translateX(0)}.sidebar-collapse-btn{display:none}.mobile-menu-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-color);background:var(--vscode-line-bg)}.mobile-menu-btn{height:36px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:0.74rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.mobile-menu-btn svg{width:14px;height:14px}.mobile-menu-btn:hover,.mobile-menu-btn.active{color:var(--primary);background:rgba(var(--color-rgb-primary),0.08)}.sidebar-overlay{display:none!important}.auth-section{padding:12px;flex-shrink:0}.google-btn{padding:12px 14px;font-size:0.8125rem}.user-profile-btn{padding:10px 12px}.panel-header{padding:8px 10px}.panel-title{font-size:0.75rem}.panel-icon{width:14px;height:14px}.panel-action-btn span{display:none}.panel-inline-label{display:none}.panel-action-btn{width:36px;height:36px;padding:0}.panel-action-btn svg{width:16px;height:16px}.file-actions{opacity:1;pointer-events:auto}.file-action-btn{width:32px;height:32px}.file-action-btn svg{width:16px;height:16px}.file-item{padding:6px 10px 6px 16px}#fullscreen-editor-btn,#fullscreen-terminal-btn{display:inline-flex}.editor-footer{padding:5px 10px;font-size:0.7rem}.loading-progress{width:220px}.loading-text{font-size:0.8125rem}.blocker-message{padding:10px 14px;font-size:0.8125rem}.blocker-message svg{width:17px;height:17px}.file-tab{min-width:90px;padding:0 10px;font-size:0.75rem}.file-tab svg{width:13px;height:13px}#output-panel{height:60%}.output-header{padding:8px 10px}.output-title{font-size:0.75rem}.copy-error-btn{height:36px;padding:0 10px;font-size:0.75rem}#copy-btn-text{display:none}.expand-btn{width:36px;height:36px}.output-content{padding:10px 12px;font-size:0.75rem;line-height:1.6}.cm-tooltip.cm-tooltip-autocomplete{max-height:40vh!important;width:80vw!important;max-width:320px!important;font-size:0.8rem!important}.cm-tooltip-autocomplete>ul{max-height:40vh!important}.cm-tooltip-autocomplete>ul>li{padding:6px 8px!important;font-size:0.8rem!important;line-height:1.2!important}.cm-tooltip.cm-completionInfo{display:none!important}}@media (max-width:480px){.header-content{padding:7px 8px;gap:7px}.logo{font-size:0.75rem}.header-logo-image{width:30px;max-height:26px}.header-brand-text{font-size:0.82rem}#workspace{min-height:calc(100dvh - var(--header-height,90px) - var(--tab-bar-height,44px));height:auto}#editor-wrapper,#terminal-wrapper{height:calc(100dvh - var(--header-height,90px) - var(--tab-bar-height,44px));max-height:calc(100dvh - var(--header-height,90px) - var(--tab-bar-height,44px))}#output-panel{height:65%}.mobile-tab{font-size:0.75rem}.mobile-tab svg{width:14px;height:14px}#save-btn{display:none!important}}@media (max-width:768px) and (orientation:landscape){:root{--header-height:50px;--tab-bar-height:38px}.header-content{padding:0.3rem 0.5rem}#run-btn{order:5;flex:1 1 auto;width:auto;height:36px;font-size:0.85rem}#save-btn{display:none!important}.mobile-tab-bar{height:var(--tab-bar-height);padding:4px 10px}.mobile-tab{height:32px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}@media print{header,.sidebar-container,#terminal-wrapper,.mobile-tab-bar{display:none!important}#editor-wrapper{border:none!important;box-shadow:none!important}}