.code-lab-container{display:flex;height:100vh;height:100dvh;width:100%;max-width:100vw;overflow:hidden;box-sizing:border-box}@media (max-width:768px){.code-lab,.code-lab-container,.code-lab-main,body,html{overflow-x:hidden;width:100%;max-width:100vw}}.code-lab-sidebar{transition:width .25s ease,min-width .25s ease}.sidebar-header{padding:12px 16px}.sidebar-logo{gap:8px;font-size:15px}.sidebar-logo svg{width:20px;height:20px}.sidebar-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border-radius:4px;transition:all .15s ease}.new-session-btn{gap:8px;margin:12px;padding:12px;font-weight:600;font-size:14px;transition:all .15s ease}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;color:#888;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.session-item{gap:12px;padding:10px 12px;margin:2px 8px;background:transparent;border:none;color:#aaa;font-size:14px;text-align:left;transition:all .1s ease;width:calc(100% - 16px)}.session-item.active,.session-item:hover{color:#fff}.session-dot{width:6px;height:6px;border-radius:50%;background:#666;flex-shrink:0}.session-item.active .session-dot{background:#fff}.workspace-tabs{gap:0;background:#1a1a1a}.workspace-tabs button{padding:10px 14px;background:transparent;font-size:13px;transition:all .1s ease}.workspace-tabs button:hover{background:#333}.files-header{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:1px solid #333}.files-title{font-weight:600;font-size:14px;color:#fff}.files-actions{display:flex;gap:4px}.files-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:4px;color:#888;cursor:pointer;transition:all .1s ease}.files-action-btn:hover{background:#333;color:#fff}.files-search{width:100%;padding:8px 12px;margin:8px 12px;width:calc(100% - 24px);background:#222;border:1px solid #333;border-radius:6px;color:#fff;font-size:13px;outline:none;transition:all .1s ease}.files-search:focus{border-color:#555;box-shadow:0 0 0 3px hsla(0,0%,100%,.1)}.files-search::-moz-placeholder{color:#666}.files-search::placeholder{color:#666}.files-empty{justify-content:center;height:200px;color:#888;font-size:14px}.file-tree-item,.files-empty{display:flex;align-items:center}.file-tree-item{gap:8px;padding:6px 12px;border-radius:4px;color:#aaa;cursor:pointer;transition:all .1s ease;font-size:13px}.file-tree-item:hover{background:#333;color:#fff}.file-tree-item.selected{background:#2a2a2a;color:#fff}.quick-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:480px;padding:0 16px}.quick-action-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:#000;border:1px solid #444;border-radius:9999px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.quick-action-btn:hover{background:#333;border-color:#555;transform:translateY(-1px)}.composer-box{display:flex;align-items:flex-end;gap:8px;padding:12px;background:#000;border:1px solid #444;border-radius:12px;transition:all .15s ease}.composer-box:focus-within{border-color:#666;box-shadow:0 0 0 3px hsla(0,0%,100%,.1)}.composer-textarea{flex:1;min-height:24px;max-height:200px;padding:6px;background:transparent;border:none;color:#fff;font-size:15px;line-height:1.5;resize:none;outline:none}.composer-textarea::-moz-placeholder{color:#888}.composer-textarea::placeholder{color:#888}.composer-btn{display:flex;width:32px;height:32px;border-radius:6px;transition:all .1s ease}.composer-btn:hover{background:#333;color:#fff}.composer-btn.send:hover{background:#e5e5e5}.composer-btn.send:disabled{cursor:not-allowed}.code-lab-status-bar{display:flex;align-items:center;justify-content:space-between;height:26px;padding:0 12px;background:#1a1a1a;border-top:1px solid #333;font-size:11px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.status-item{display:flex;align-items:center;gap:4px;padding:2px 8px;background:transparent;border:none;border-radius:4px;color:#888;cursor:default;transition:all .1s ease}.status-item.clickable{cursor:pointer}.status-item.clickable:hover{background:#333;color:#fff}.status-dot{width:6px;height:6px;border-radius:50%}.status-dot.success{background:#22c55e}.status-dot.warning{background:#f59e0b}.status-dot.error{background:#ef4444}.code-lab-container ::-webkit-scrollbar{width:8px;height:8px}.code-lab-container ::-webkit-scrollbar-track{background:transparent}.code-lab-container ::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.code-lab-container ::-webkit-scrollbar-thumb:hover{background:#666}.code-lab-container *{scrollbar-width:thin;scrollbar-color:#444 transparent}@keyframes cl-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cl-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cl-animate-fade-in{animation:cl-fade-in .15s ease-out}.cl-animate-slide-up{animation:cl-slide-up .25s ease-out}@media (max-width:768px){body,html{-webkit-text-size-adjust:100%}.code-lab,.code-lab-container,.code-lab-content,.code-lab-main,body,html{overflow-x:hidden;width:100%;max-width:100vw}.workspace-tabs button{padding:8px 10px;font-size:12px}.quick-actions{flex-direction:column;width:100%}.quick-action-btn{width:100%;justify-content:center}.session-item{padding:12px}.composer-box{border-radius:16px}.thread-messages{width:100%;max-width:100%;overflow-x:hidden}.code-block,.terminal-block{max-width:100%;overflow-x:auto}.message-assistant,.message-user{max-width:100%;word-wrap:break-word;overflow-wrap:break-word}}@media (max-width:480px){.code-lab,.code-lab-main{font-size:14px}.thread-header h1{font-size:.9rem}.code-lab-composer,.thread-messages{padding:.75rem}}.code-lab{height:100vh;height:100dvh;width:100%;max-width:100vw;color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden;box-sizing:border-box}.code-lab,.code-lab-main{display:flex;background:#1a1a1a;position:relative}.code-lab-main{flex:1;flex-direction:column;min-width:0;max-width:100%;z-index:1;overflow-x:hidden}.mobile-backdrop,.mobile-header{display:none}.code-lab .touch-target,.code-lab button{min-height:44px;min-width:44px}@media (min-width:769px) and (max-width:1024px){.code-lab{flex-direction:row}.code-lab-sidebar{width:260px;flex-shrink:0}.code-lab-main{flex:1}.code-lab .sidebar-item,.code-lab .tab-button,.code-lab .touch-target,.code-lab button{min-height:44px;padding-top:.625rem;padding-bottom:.625rem}}@media (max-width:768px){.code-lab{flex-direction:column;height:100vh;height:100dvh;width:100vw;overflow:hidden}.code-lab-main{flex:1;width:100%;min-height:0;display:flex;flex-direction:column;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.mobile-backdrop{display:block;position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;height:100dvh;background:rgba(0,0,0,.5);z-index:44;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.mobile-header{gap:.5rem;padding:max(.75rem,env(safe-area-inset-top,.75rem)) 1rem .75rem;min-height:56px;background:#1a1a1a;border-bottom:1px solid #333;width:100%;box-sizing:border-box;overflow:hidden}.mobile-header,.mobile-menu-btn{display:flex;align-items:center;flex-shrink:0}.mobile-menu-btn{background:none;border:none;padding:.5rem;min-width:44px;min-height:44px;justify-content:center;cursor:pointer;color:#888;border-radius:8px;-webkit-tap-highlight-color:transparent}.mobile-menu-btn:active,.mobile-menu-btn:hover{background:#333;color:#fff}.mobile-menu-btn svg{width:24px;height:24px}.mobile-title{font-weight:600;color:#fff;flex:1;font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.code-lab .sidebar-item,.code-lab .tab-button,.code-lab .touch-target,.code-lab button{min-height:44px}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;max-height:70vh;border-radius:16px 16px 0 0;background:var(--cl-bg-primary);box-shadow:0 -4px 20px rgba(0,0,0,.15);z-index:50;transform:translateY(100%);transition:transform .3s ease-out}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{width:36px;height:4px;background:var(--cl-border-secondary);border-radius:2px;margin:8px auto 12px}}.code-lab-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem}.code-lab-empty-content{text-align:center;padding:2rem;max-width:400px}.code-lab-empty-icon{width:64px;height:64px;margin:0 auto 1.5rem;color:#fff}.code-lab-empty-icon svg{width:100%;height:100%}.code-lab-empty h2{font-size:1.5rem;font-weight:600;color:#fff;margin:0 0 .5rem}.code-lab-empty p{color:#888;margin:0 0 1.5rem}.code-lab-empty-btn{background:#fff;color:#000;border:none;padding:.75rem 1.5rem;min-height:44px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.code-lab-empty-btn:hover{background:#e5e5e5}.header-actions{display:flex;gap:.5rem;margin-left:auto}.header-btn{background:none;border:none;padding:.625rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#888;border-radius:8px;transition:all .2s}.header-btn:hover{background:#333;color:#fff}.header-btn.active{background:#fff;color:#000}.header-btn svg{width:20px;height:20px}.code-lab-content{flex:1;display:flex;min-height:0;overflow:hidden}.chat-area{flex:1;display:flex;flex-direction:column;min-width:0;transition:flex .3s ease}.chat-area.with-panel{flex:0.6}.workspace-panel{width:40%;min-width:300px;max-width:600px;background:#1a1a1a;border-left:1px solid #333;display:flex;flex-direction:column;animation:slideIn .2s ease}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.workspace-tabs{display:flex;border-bottom:1px solid #333;padding:0 .5rem;background:#222;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.workspace-tabs::-webkit-scrollbar{display:none}.workspace-tabs button{background:none;padding:.75rem;min-height:44px;font-size:.8125rem;font-weight:500;color:#888;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s;white-space:nowrap;flex-shrink:0}.workspace-tabs button:hover{color:#fff}.workspace-tabs button.active{color:#fff;border-bottom-color:#fff}.workspace-close-btn{display:flex;align-items:center;justify-content:center;width:36px;min-width:36px;height:36px;padding:0!important;margin-right:.25rem;border-radius:6px;border-bottom:none!important}.workspace-close-btn:hover{background:hsla(0,0%,100%,.1)}.workspace-close-btn svg{width:18px;height:18px}.workspace-content{flex:1;overflow:auto;padding:1rem}.workspace-git-actions{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid #333;background:#222}.git-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;min-height:44px;border:1px solid #333;border-radius:8px;background:#1a1a1a;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.git-btn svg{width:16px;height:16px}.git-btn.pull{color:#3b82f6}.git-btn.pull:hover{background:rgba(59,130,246,.15);border-color:#3b82f6}.git-btn.push{color:#22c55e}.git-btn.push:hover{background:rgba(34,197,94,.15);border-color:#22c55e}.diff-list{display:flex;flex-direction:column;gap:1rem}.diff-empty{text-align:center;padding:2rem 1rem;color:#888}.diff-empty p{margin:0 0 .5rem}.diff-empty .hint{font-size:.8125rem;color:#666}.tasks-panel{display:flex;flex-direction:column;height:100%}.tasks-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid #333;margin-bottom:1rem}.tasks-header h3{margin:0;font-size:1rem;font-weight:600;color:#fff}.tasks-hint{font-size:.75rem;color:#666}.tasks-empty{text-align:center;padding:2rem 1rem;color:#888}.tasks-empty p{margin:0 0 .5rem}.tasks-empty .hint{font-size:.8125rem;color:#666;line-height:1.5}.tasks-list{display:flex;flex-direction:column;gap:.75rem}.task-item{padding:.75rem 1rem;background:#222;border:1px solid #333;border-radius:8px}.task-item.running{border-color:#fff;background:hsla(0,0%,100%,.1)}.task-item.completed{border-color:#22c55e}.task-item.failed{border-color:#ef4444}.task-header{display:flex;justify-content:space-between;align-items:center}.task-name{font-weight:500;font-size:.875rem;color:#fff}.task-status{font-size:.75rem;padding:.125rem .5rem;border-radius:4px;background:#333}.task-status.running{color:#fff}.task-status.completed{color:#22c55e}.task-status.failed{color:#ef4444}.task-time{font-size:.75rem;color:#666;margin-top:.25rem}.task-output{margin-top:.5rem;padding:.5rem;background:#0d0d0d;border-radius:4px;font-size:.75rem;font-family:monospace;overflow-x:auto;max-height:100px;color:#aaa}.plan-empty{text-align:center;padding:2rem 1rem;color:#888}.plan-empty-icon{font-size:2.5rem;margin-bottom:1rem}.plan-empty h3{font-size:1rem;font-weight:600;color:var(--cl-text-primary);margin:0 0 .5rem}.plan-empty p{margin:0 0 .25rem;font-size:.875rem}.plan-empty .hint{font-size:.8125rem;color:var(--cl-text-muted)}@media (max-width:1024px){.workspace-panel{position:fixed;right:0;top:0;bottom:0;width:100%;max-width:400px;z-index:35;box-shadow:-4px 0 12px rgba(0,0,0,.1)}.chat-area.with-panel{flex:1}}@media (max-width:768px){.chat-area,.code-lab-content{flex:1;display:flex;flex-direction:column;min-height:0;width:100%;overflow:hidden}.workspace-panel{max-width:100%;top:0;bottom:0;padding-bottom:env(safe-area-inset-bottom,0)}.header-actions{display:flex;gap:.125rem;flex-shrink:0;margin-left:auto;align-items:center}.header-btn{padding:.5rem;min-width:40px;min-height:40px;background:transparent;border:none;border-radius:8px}.header-btn:hover{background:hsla(0,0%,100%,.1)}.header-btn.active{background:hsla(0,0%,100%,.15);color:#fff}.header-btn svg{width:18px;height:18px}.workspace-tabs button{padding:.5rem .625rem;font-size:.75rem;min-height:40px}.workspace-git-actions{padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom, 0))}.git-btn{padding:.5rem .75rem;min-height:40px;font-size:.75rem}.workspace-content{padding:.75rem;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}}@media (max-width:480px){.mobile-header{padding:max(.5rem,env(safe-area-inset-top,.5rem)) .75rem .5rem;gap:.375rem}.mobile-menu-btn{padding:.375rem;min-width:40px;min-height:40px}.mobile-title{display:none}.header-actions{gap:0}.header-btn{padding:.375rem;min-width:36px;min-height:36px}.header-btn svg{width:16px;height:16px}.code-lab-empty-content{padding:1.5rem 1rem}.code-lab-empty-icon{width:48px;height:48px}.code-lab-empty h2{font-size:1.25rem}}.code-lab-sidebar{width:280px;min-width:280px;background:#1a1a1a;border-right:1px solid #333;display:flex;flex-direction:column;transition:width .2s,min-width .2s}.code-lab-sidebar.collapsed{width:56px;min-width:56px}.sidebar-header{justify-content:space-between;padding:1rem;border-bottom:1px solid #333}.sidebar-header,.sidebar-logo{display:flex;align-items:center}.sidebar-logo{gap:.5rem;font-weight:600;color:#fff}.sidebar-logo svg{width:24px;height:24px;color:#fff}.sidebar-toggle{background:none;border:none;padding:.375rem;cursor:pointer;color:#888;border-radius:6px;transition:background .2s}.sidebar-toggle:hover{background:#333;color:#fff}.sidebar-toggle svg{width:18px;height:18px}.sidebar-actions{padding:1rem}.new-session-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;background:#000;color:#fff;border:1px solid #444;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.new-session-btn:hover{background:#333;border-color:#555}.new-session-btn svg{width:18px;height:18px}.sidebar-changes{padding:0 1rem 1rem}.changes-label{font-size:.75rem;font-weight:500;color:#888;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.changes-stats{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;background:#222;border:1px solid #333;border-radius:8px}.change-stat{display:flex;align-items:center;gap:.25rem;font-size:.75rem}.change-stat svg{width:14px;height:14px}.change-icon{font-weight:700;width:1rem;text-align:center}.change-value{font-weight:600}.change-text{color:#888}.change-stat.added{color:#22c55e}.change-stat.removed{color:#ef4444}.change-stat.files{color:#fff;flex-basis:100%;margin-top:.25rem;padding-top:.5rem;border-top:1px solid #333}.sidebar-repo{padding:0 1rem 1rem;position:relative}.repo-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.repo-label{font-size:.75rem;font-weight:500;color:#888;text-transform:uppercase;letter-spacing:.05em}.repo-refresh-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:#888;border-radius:4px;transition:all .2s}.repo-refresh-btn:hover:not(:disabled){color:#fff;background:#333}.repo-refresh-btn:disabled{cursor:wait}.repo-refresh-btn svg{width:14px;height:14px}.repo-refresh-btn svg.spinning{animation:spin 1s linear infinite}.repo-selector{width:100%;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#222;border:1px solid #333;border-radius:6px;font-size:.8125rem;color:#fff;cursor:pointer;transition:border-color .2s;text-align:left}.repo-selector:hover{border-color:#444}.repo-icon{width:16px;height:16px;color:#888}.repo-name{flex:1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-branch{font-size:.75rem;color:#888}.repo-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#222;border:1px solid #333;border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.4);z-index:100;max-height:320px;overflow:hidden;display:flex;flex-direction:column}.repo-search{width:100%;padding:.625rem .75rem;border:none;border-bottom:1px solid #333;background:#222;color:#fff;font-size:.8125rem;outline:none}.repo-search:focus{border-bottom-color:#555}.repo-search::-moz-placeholder{color:#666}.repo-search::placeholder{color:#666}.repo-empty,.repo-loading,.repo-not-connected{padding:1rem;text-align:center;color:#888;font-size:.8125rem}.repo-not-connected a{display:inline-block;margin-top:.5rem;color:#7dd3fc;text-decoration:none;font-weight:500}.repo-not-connected a:hover{text-decoration:underline}.repo-list{flex:1;overflow-y:auto;padding:.25rem}.repo-item{width:100%;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:none;border:none;border-radius:6px;font-size:.8125rem;color:#fff;cursor:pointer;text-align:left}.repo-item.active,.repo-item:hover{background:#333}.repo-item.clear{color:#ef4444}.repo-item.clear:hover{background:rgba(239,68,68,.15)}.repo-item svg{width:16px;height:16px;flex-shrink:0}.repo-item-icon{color:#888}.repo-item-info{flex:1;min-width:0;display:flex;flex-direction:column}.repo-item-name{font-weight:500}.repo-item-desc,.repo-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-item-desc{font-size:.75rem;color:#888}.repo-item-private{color:#f59e0b;width:14px;height:14px}.sidebar-file-browser{max-height:200px;overflow-y:auto;border-top:1px solid #333;border-bottom:1px solid #333}.sidebar-sessions{flex:1;overflow:hidden;display:flex;flex-direction:column}.sessions-label{font-size:.75rem;font-weight:500;color:#888;text-transform:uppercase;letter-spacing:.05em;padding:0 1rem;margin-bottom:.5rem}.sessions-list{flex:1;overflow-y:auto;padding:0 .5rem}.sessions-empty{padding:1rem;text-align:center;color:#888;font-size:.8125rem}.session-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:6px;cursor:pointer;transition:background .2s;position:relative}.session-item:hover{background:#333}.session-item.active{background:#2a2a2a}.session-indicator{width:8px;height:8px;border-radius:50%;background:#666}.session-item.active .session-indicator{background:#fff}.session-info{flex:1;min-width:0}.session-title{font-size:.875rem;font-weight:500;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-meta{font-size:.75rem;color:#888;margin-top:.125rem}.session-menu-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:#888;border-radius:4px;opacity:0;transition:opacity .2s,background .2s}.session-item:hover .session-menu-btn{opacity:1}.session-menu-btn:hover{background:#444;color:#fff}.session-menu-btn svg{width:18px;height:18px}.session-menu{position:absolute;right:.5rem;top:100%;background:#222;border:1px solid #333;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.4);z-index:10;min-width:140px;overflow:hidden}.session-menu button{width:100%;display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:none;border:none;font-size:.8125rem;color:#fff;cursor:pointer;text-align:left}.session-menu button:hover{background:#333}.session-menu button.danger{color:#ef4444}.session-menu button.danger:hover{background:rgba(239,68,68,.15)}.session-menu button svg{width:16px;height:16px}.session-edit-input{width:100%;padding:.25rem .5rem;border:1px solid #555;border-radius:4px;font-size:.875rem;background:#222;color:#fff;outline:none}.sidebar-footer{padding:.75rem 1rem;border-top:1px solid #333;margin-top:auto}.footer-links{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.75rem}.back-to-chat{display:inline-flex;align-items:center;gap:.25rem;color:#888;text-decoration:none;transition:color .2s}.back-to-chat:hover{color:#fff}.back-to-chat svg{width:14px;height:14px}.footer-divider{color:#555}.powered-by{color:#666}@media (max-width:768px){.code-lab-sidebar{position:fixed;top:0;left:0;bottom:0;height:100vh;height:100dvh;width:280px;min-width:280px;max-width:85vw;z-index:45;box-shadow:4px 0 24px rgba(0,0,0,.5);transform:translateX(0);transition:transform .3s cubic-bezier(.4,0,.2,1);overflow-y:auto;-webkit-overflow-scrolling:touch;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0);padding-left:env(safe-area-inset-left,0)}.code-lab-sidebar.collapsed{transform:translateX(-100%);box-shadow:none}.sidebar-header{padding-top:max(1rem,env(safe-area-inset-top,1rem))}.sidebar-changes{padding:.5rem 1rem}.changes-stats{padding:.5rem;gap:.375rem}.change-stat{font-size:.6875rem}.sidebar-file-browser{max-height:150px}.session-menu-btn{opacity:1}.sidebar-footer{padding:.625rem 1rem calc(.625rem + env(safe-area-inset-bottom, 0))}.footer-links{font-size:.6875rem}.repo-dropdown{position:fixed;left:1rem;right:1rem;top:auto;bottom:1rem;bottom:calc(1rem + env(safe-area-inset-bottom, 0));max-height:60vh;z-index:110}.session-item{min-height:52px;padding:.75rem}.new-session-btn{min-height:48px}.sidebar-toggle{min-width:44px;min-height:44px}}.code-lab-composer{padding:1rem 1.5rem 1.5rem;background:#1a1a1a;border-top:1px solid #333;position:relative;transition:all .2s ease}.code-lab-composer.dragging{background:#2a2a2a;border-top-color:#555}.code-lab-composer.dragging:before{content:"Drop images or files here";position:absolute;inset:0;background:hsla(0,0%,100%,.1);border:2px dashed #666;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:500;color:#fff;z-index:10;pointer-events:none}.attachment-previews{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.attachment-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#333;border-radius:8px;font-size:.75rem;color:#fff}.attachment-item img{-o-object-fit:cover;object-fit:cover}.attachment-icon,.attachment-item img{width:32px;height:32px;border-radius:4px}.attachment-icon{display:flex;align-items:center;justify-content:center;background:#444;color:#fff}.attachment-icon svg{width:18px;height:18px}.attachment-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}.attachment-remove{background:none;border:none;padding:.25rem;cursor:pointer;color:#888;border-radius:4px}.attachment-remove:hover{background:#444;color:#ef4444}.attachment-remove svg{width:14px;height:14px}.inline-model-selector{position:relative}.model-selector-trigger{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#2a2a2a;border:1px solid #444;border-radius:6px;font-size:.75rem;color:#fff;cursor:pointer;transition:all .15s ease}.model-selector-trigger:hover:not(:disabled){background:#333;border-color:#555}.model-selector-trigger:disabled{opacity:.5;cursor:not-allowed}.model-selector-trigger.model-flash{animation:modelSwitchFlash .8s ease-out}@keyframes modelSwitchFlash{0%{background:#10b981;border-color:#10b981;color:#fff}50%{background:#059669;border-color:#059669;color:#fff}to{background:#2a2a2a;border-color:#444;color:#fff}}.model-selector-trigger .model-name{font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-chevron{transition:transform .2s ease;color:#888;flex-shrink:0}.model-chevron.open{transform:rotate(180deg)}.model-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;min-width:275px;max-width:375px;max-height:50vh;overflow-y:auto;background:#1a1a1a;border:1px solid #444;border-radius:8px;box-shadow:0 -8px 24px rgba(0,0,0,.5);animation:slideUp .15s ease;z-index:1000;-webkit-overflow-scrolling:touch}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.model-dropdown .model-option{width:100%;display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:none;border:none;border-bottom:1px solid #333;cursor:pointer;text-align:left;color:#fff;font-size:.875rem;transition:background .1s ease}.model-dropdown .model-option:last-of-type{border-bottom:none}.model-dropdown .model-option:hover{background:#2a2a2a}.model-dropdown .model-option.selected{background:#333}.model-dropdown .model-option .model-info{display:flex;flex-direction:column;gap:.125rem;flex:1}.model-dropdown .model-option .model-desc{font-size:.6875rem;color:#888}.model-dropdown .model-option .check{margin-left:auto;color:#10b981;flex-shrink:0}.model-provider-header{padding:.5rem .75rem .375rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#666;background:#1a1a1a;border-bottom:1px solid #333}.model-provider-header:not(:first-child){border-top:1px solid #333;margin-top:.25rem}.model-hint{padding:.375rem .75rem;background:#222;border-top:1px solid #333;font-size:.6875rem;color:#666;text-align:center}.composer-container{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1rem;background:#000;border:1px solid #444;border-radius:12px;transition:border-color .2s,box-shadow .2s}.composer-container:focus-within{border-color:#666;box-shadow:0 0 0 3px hsla(0,0%,100%,.1)}.composer-input{width:100%;border:none;background:transparent;font-size:.9375rem;line-height:1.5;color:#fff;resize:none;outline:none;min-height:60px;max-height:200px}.composer-input::-moz-placeholder{color:#888}.composer-input::placeholder{color:#888}.composer-input:disabled{color:#666}.composer-actions{display:flex;align-items:center;gap:.25rem;padding-top:.25rem;border-top:1px solid #333}.actions-spacer{flex:1}.composer-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem;background:transparent;border:none;border-radius:8px;cursor:pointer;color:#888;transition:color .2s}.composer-btn.attach{padding:.375rem}.composer-btn.attach:hover:not(:disabled){color:#fff}.composer-btn:disabled{opacity:.4;cursor:not-allowed}.composer-btn svg{width:20px;height:20px}.composer-btn.send{background:#fff;color:#000;width:40px;height:40px;padding:0;border-radius:50%}.composer-btn.send:hover:not(:disabled){background:#e5e5e5;color:#000}.composer-btn.send:disabled{background:#333;color:#666}.composer-btn.stop{background:#ef4444;color:#fff;padding:.5rem .75rem;font-size:.8125rem;font-weight:500}.composer-btn.stop:hover{background:#dc2626}.composer-hint{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;font-size:.75rem;color:#888}.separator{color:#555}.agents-menu-container,.creative-menu-container{position:relative}.composer-btn.agents,.composer-btn.creative{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;background:#2a2a2a;border:1px solid #444;border-radius:6px;font-size:.75rem;color:#aaa;transition:all .15s ease}.composer-btn.agents:hover:not(:disabled),.composer-btn.creative:hover:not(:disabled){background:#333;border-color:#555;color:#fff}.composer-btn.agents.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f1;color:#fff}.composer-btn.agents svg,.composer-btn.creative svg{width:16px;height:16px}.composer-btn .btn-label{font-weight:500}.active-indicator{width:6px;height:6px;background:#10b981;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}.agents-dropdown,.creative-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;min-width:280px;background:#1a1a1a;border:1px solid #444;border-radius:10px;box-shadow:0 -8px 24px rgba(0,0,0,.5);animation:slideUp .15s ease;z-index:1000;overflow:hidden}.agent-option,.creative-option{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid #333;cursor:pointer;text-align:left;transition:background .1s ease}.agent-option:last-child,.creative-option:last-child{border-bottom:none}.agent-option.selected,.agent-option:hover:not(:disabled),.creative-option:hover:not(:disabled){background:#2a2a2a}.agent-option:disabled{opacity:.6;cursor:not-allowed}.agent-icon,.creative-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.agent-icon svg,.creative-icon svg{width:20px;height:20px}.agent-icon.deep-research{background:linear-gradient(135deg,#ec4899,#8b5cf6);color:#fff}.agent-icon.strategy{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.agent-icon.research{background:linear-gradient(135deg,#3b82f6,#06b6d4);color:#fff}.creative-icon.create{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff}.creative-icon.edit{background:linear-gradient(135deg,#10b981,#3b82f6);color:#fff}.agent-info,.creative-info{display:flex;flex-direction:column;gap:.125rem;flex:1;min-width:0}.agent-name,.creative-name{font-size:.875rem;font-weight:500;color:#fff}.agent-desc,.creative-desc{font-size:.6875rem;color:#888}.loading-spinner{width:16px;height:16px;border:2px solid #444;border-top-color:#8b5cf6;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@media (max-width:768px){.code-lab-composer{padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom, 0));flex-shrink:0}.composer-container{padding:.625rem .75rem;gap:.5rem}.composer-input{font-size:16px;min-height:44px}.composer-btn{min-width:44px;min-height:44px}.composer-btn.attach{min-width:36px;min-height:36px}.composer-btn svg{width:20px;height:20px}.inline-model-selector .model-selector-trigger{padding:.375rem .5rem}.inline-model-selector .model-selector-trigger .model-name{max-width:100px}.model-dropdown{left:0;right:auto;min-width:250px;max-height:45vh}.composer-btn.send{width:44px;height:44px;padding:0;border-radius:50%}.composer-btn.stop{padding:.625rem 1rem}.attachment-previews{gap:.375rem;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding-bottom:.25rem}.attachment-item{flex-shrink:0}.attachment-name{max-width:100px}.composer-btn .btn-label,.composer-hint{display:none}.agents-dropdown,.creative-dropdown{min-width:260px}}@media (max-width:480px){.code-lab-composer{padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom, 0))}.composer-container{padding:.5rem;border-radius:10px}.attachment-name{max-width:80px}}.code-lab-debugger{display:flex;flex-direction:column;height:100%;background:var(--cl-bg-primary,#0d1117);border-radius:8px;overflow:hidden;font-size:13px}.debug-toolbar{gap:4px;padding:8px 12px;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.debug-toolbar,.toolbar-btn{display:flex;align-items:center}.toolbar-btn{justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:6px;color:var(--cl-text-tertiary,#8b949e);cursor:pointer;transition:all .15s}.toolbar-btn:hover:not(:disabled){background:var(--cl-bg-hover,#21262d);color:var(--cl-text-primary,#e6edf3)}.toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.toolbar-btn.primary{background:var(--cl-accent-green,#3fb950);color:#fff}.toolbar-btn.primary:hover:not(:disabled){background:#2ea043}.toolbar-btn.stop:hover:not(:disabled){background:rgba(248,81,73,.15);color:#f85149}.toolbar-btn svg{width:16px;height:16px}.toolbar-divider{width:1px;height:16px;background:var(--cl-border,#30363d);margin:0 4px}.debug-state{display:flex;align-items:center;gap:6px;margin-left:auto;font-size:11px;color:var(--cl-text-tertiary,#8b949e)}.state-indicator{width:8px;height:8px;border-radius:50%}.state-idle .state-indicator,.state-indicator{background:var(--cl-text-muted,#6e7681)}.state-running .state-indicator{background:var(--cl-accent-green,#3fb950);animation:pulse 1.5s infinite}.state-paused .state-indicator{background:var(--cl-accent-yellow,#d29922)}.state-stopped .state-indicator{background:var(--cl-text-danger,#f85149)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.debugger-layout{display:flex;flex:1;overflow:hidden}.debugger-sidebar{width:280px;display:flex;flex-direction:column;border-right:1px solid var(--cl-border,#30363d);overflow:hidden}.debugger-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.tab-bar{display:flex;padding:0 8px;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.tab-btn{padding:8px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--cl-text-tertiary,#8b949e);font-size:12px;cursor:pointer;transition:all .15s}.tab-btn:hover{color:var(--cl-text-primary,#e6edf3)}.tab-btn.active{color:var(--cl-accent,#58a6ff);border-bottom-color:var(--cl-accent,#58a6ff)}.debug-panel{display:flex;flex-direction:column;flex:1;min-height:0}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--cl-bg-tertiary,#0d1117);border-bottom:1px solid var(--cl-border,#30363d)}.panel-title{font-size:11px;font-weight:600;color:var(--cl-text-secondary,#8b949e);text-transform:uppercase}.panel-count{font-size:10px;color:var(--cl-text-muted,#6e7681);padding:2px 6px;background:var(--cl-bg-secondary,#161b22);border-radius:10px}.panel-content{flex:1;overflow-y:auto;padding:8px}.panel-empty{padding:16px;text-align:center;color:var(--cl-text-muted,#6e7681);font-size:12px}.stack-list{list-style:none;margin:0;padding:0}.stack-frame{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background .15s}.stack-frame:hover{background:var(--cl-bg-hover,#21262d)}.stack-frame.active{background:var(--cl-accent-bg,rgba(56,139,253,.15))}.frame-index{min-width:16px;font-size:10px;color:var(--cl-text-muted,#6e7681)}.frame-name{flex:1;color:var(--cl-text-primary,#e6edf3);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frame-location{font-size:11px;color:var(--cl-text-tertiary,#8b949e)}.frame-async{font-size:9px;padding:1px 4px;background:rgba(210,153,34,.15);color:#d29922;border-radius:3px}.variable{font-family:SF Mono,Fira Code,monospace;font-size:12px}.variable-row{display:flex;align-items:center;gap:4px;padding:3px 0;cursor:pointer}.variable-row:hover{background:var(--cl-bg-hover,#21262d)}.variable.changed .variable-value{background:rgba(210,153,34,.2);border-radius:2px;padding:0 2px}.expand-icon{font-size:8px;color:var(--cl-text-muted,#6e7681);transition:transform .15s;width:12px}.expand-icon.expanded{transform:rotate(90deg)}.variable-name{color:var(--cl-accent-purple,#a371f7)}.variable-sep{color:var(--cl-text-muted,#6e7681)}.variable-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variable-value.type-string{color:#a5d6ff}.variable-value.type-number{color:#79c0ff}.variable-value.type-boolean{color:#ff7b72}.variable-value.type-null,.variable-value.type-undefined{color:#8b949e}.variable-value.type-array,.variable-value.type-object{color:#ffa657}.variable-value.type-function{color:#d2a8ff}.variable-type{font-size:10px;color:var(--cl-text-muted,#6e7681);margin-left:auto}.variable-group{margin-bottom:12px}.group-header{font-size:10px;font-weight:600;color:var(--cl-text-tertiary,#8b949e);text-transform:uppercase;padding:4px 0;border-bottom:1px solid var(--cl-border,#30363d);margin-bottom:4px}.watch-input-row{display:flex;gap:4px;margin-bottom:8px}.watch-input{flex:1;padding:6px 8px;background:var(--cl-bg-tertiary,#0d1117);border:1px solid var(--cl-border,#30363d);border-radius:4px;color:var(--cl-text-primary,#e6edf3);font-size:12px;outline:none}.watch-input:focus{border-color:var(--cl-accent,#58a6ff)}.watch-add-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--cl-bg-secondary,#161b22);border:1px solid var(--cl-border,#30363d);border-radius:4px;color:var(--cl-text-tertiary,#8b949e);font-size:16px;cursor:pointer}.watch-add-btn:hover{background:var(--cl-bg-hover,#21262d);color:var(--cl-text-primary,#e6edf3)}.watch-list{list-style:none;margin:0;padding:0}.watch-item{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-family:SF Mono,Fira Code,monospace;font-size:12px}.watch-item:hover{background:var(--cl-bg-hover,#21262d)}.watch-expr{color:var(--cl-accent-purple,#a371f7);max-width:120px;overflow:hidden;text-overflow:ellipsis}.watch-sep{color:var(--cl-text-muted,#6e7681)}.watch-value{flex:1;overflow:hidden;text-overflow:ellipsis}.watch-error{color:var(--cl-text-danger,#f85149);font-style:italic}.watch-remove{opacity:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--cl-text-muted,#6e7681);cursor:pointer}.watch-item:hover .watch-remove{opacity:1}.watch-remove:hover{color:var(--cl-text-danger,#f85149)}.breakpoint-list{list-style:none;margin:0;padding:0}.breakpoint-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px}.breakpoint-item:hover{background:var(--cl-bg-hover,#21262d)}.breakpoint-item.disabled{opacity:.5}.breakpoint-item input[type=checkbox]{accent-color:var(--cl-accent,#58a6ff)}.bp-icon{font-size:10px}.bp-icon.type-line{color:var(--cl-text-danger,#f85149)}.bp-icon.type-conditional{color:var(--cl-accent-yellow,#d29922)}.bp-icon.type-logpoint{color:var(--cl-accent,#58a6ff)}.bp-icon.type-exception{color:var(--cl-accent-purple,#a371f7)}.bp-location{flex:1;font-size:12px;color:var(--cl-text-primary,#e6edf3)}.bp-condition{max-width:80px;overflow:hidden;text-overflow:ellipsis}.bp-condition,.bp-hits{font-size:10px}.bp-condition,.bp-hits,.bp-remove{color:var(--cl-text-muted,#6e7681)}.bp-remove{opacity:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer}.breakpoint-item:hover .bp-remove{opacity:1}.bp-remove:hover{color:var(--cl-text-danger,#f85149)}.ai-analysis{padding:12px;border-top:1px solid var(--cl-border,#30363d);background:var(--cl-bg-secondary,#161b22)}.ai-analyze-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:linear-gradient(135deg,rgba(56,139,253,.15),rgba(163,113,247,.15));border:1px solid rgba(56,139,253,.3);border-radius:8px;color:var(--cl-accent,#58a6ff);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.ai-analyze-btn:hover:not(:disabled){background:linear-gradient(135deg,rgba(56,139,253,.25),rgba(163,113,247,.25));border-color:var(--cl-accent,#58a6ff)}.ai-analyze-btn:disabled{opacity:.6;cursor:not-allowed}.ai-icon{font-size:16px}.ai-hint{display:block;margin-top:8px;font-size:11px;color:var(--cl-text-muted,#6e7681);text-align:center}.panel-content::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar-track{background:transparent}.panel-content::-webkit-scrollbar-thumb{background:var(--cl-border,#30363d);border-radius:3px}@media (max-width:768px){.debugger-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--cl-border,#30363d);max-height:200px}.debugger-layout{flex-direction:column}}.terminal-container{display:flex;flex-direction:column;height:100%;background:#0d1117;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:13px;border-radius:8px;overflow:hidden}.terminal-tab-bar{display:flex;align-items:center;gap:0;padding:0 8px;background:#161b22;border-bottom:1px solid #30363d;min-height:36px}.terminal-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:#8b949e;font-size:12px;font-family:inherit;cursor:pointer;transition:all .15s}.terminal-tab:hover{color:#e6edf3}.terminal-tab.active{color:#e6edf3;border-bottom-color:#58a6ff}.terminal-tab-icon{font-size:11px}.tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:transparent;border:none;border-radius:3px;color:#6e7681;font-size:14px;cursor:pointer;opacity:0;transition:all .15s}.terminal-tab.active .tab-close,.terminal-tab:hover .tab-close{opacity:1}.tab-close:hover{background:rgba(248,81,73,.15);color:#f85149}.tab-add{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;margin-left:4px;background:transparent;border:none;border-radius:6px;color:#6e7681;font-size:16px;cursor:pointer;transition:all .15s}.tab-add:hover{background:#21262d;color:#e6edf3}.tab-bar-actions{margin-left:auto;display:flex;gap:4px}.terminal-search{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#161b22;border-bottom:1px solid #30363d}.search-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.search-input{width:100%;padding:4px 8px;background:#0d1117;border:1px solid #30363d;border-radius:4px;color:#e6edf3;font-family:inherit;font-size:12px;outline:none}.search-input:focus{border-color:#58a6ff}.search-count{font-size:11px;color:#6e7681;white-space:nowrap}.search-nav{display:flex;gap:2px}.search-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:#8b949e;cursor:pointer;transition:all .15s}.search-btn:hover:not(:disabled){background:#21262d;color:#e6edf3}.search-btn:disabled{opacity:.3}.search-btn svg{width:14px;height:14px}.search-close{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:#6e7681;font-size:16px;cursor:pointer}.search-close:hover{color:#e6edf3}.terminal-output{flex:1;overflow-y:auto;padding:8px 12px;cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text}.terminal-output::-webkit-scrollbar{width:8px}.terminal-output::-webkit-scrollbar-track{background:transparent}.terminal-output::-webkit-scrollbar-thumb{background:#30363d;border-radius:4px}.terminal-output::-webkit-scrollbar-thumb:hover{background:#484f58}.terminal-welcome{color:#8b949e;margin-bottom:12px}.welcome-title{color:#58a6ff;font-weight:600}.terminal-line{display:flex;min-height:20px;line-height:20px;white-space:pre-wrap;word-break:break-all}.terminal-line.search-highlight{background:rgba(210,153,34,.15)}.terminal-line-number{display:inline-block;width:40px;min-width:40px;text-align:right;padding-right:12px;color:#484f58;-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal-line-content{flex:1;min-width:0}.line-input .terminal-line-content{color:#e6edf3}.line-output .terminal-line-content{color:#c9d1d9}.line-error .terminal-line-content{color:#f85149}.line-system .terminal-line-content{color:#58a6ff;font-style:italic}.line-warning .terminal-line-content{color:#d29922}.line-success .terminal-line-content{color:#3fb950}.terminal-prompt{color:#3fb950;margin-right:4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ansi-bold{font-weight:700}.ansi-dim{opacity:.7}.ansi-italic{font-style:italic}.ansi-underline{text-decoration:underline}.ansi-strikethrough{text-decoration:line-through}.ansi-black{color:#484f58}.ansi-red{color:#f85149}.ansi-green{color:#3fb950}.ansi-yellow{color:#d29922}.ansi-blue{color:#58a6ff}.ansi-magenta{color:#bc8cff}.ansi-cyan{color:#39d3ef}.ansi-white{color:#e6edf3}.ansi-bright-black{color:#6e7681}.ansi-bright-red{color:#ffa198}.ansi-bright-green{color:#56d364}.ansi-bright-yellow{color:#e3b341}.ansi-bright-blue{color:#79c0ff}.ansi-bright-magenta{color:#d2a8ff}.ansi-bright-cyan{color:#56d4dd}.ansi-bright-white{color:#fff}.ansi-bg-black{background:#484f58}.ansi-bg-red{background:#f85149}.ansi-bg-green{background:#3fb950}.ansi-bg-yellow{background:#d29922}.ansi-bg-blue{background:#58a6ff}.ansi-bg-magenta{background:#bc8cff}.ansi-bg-cyan{background:#39d3ef}.ansi-bg-white{background:#e6edf3}.terminal-input-line{display:flex;align-items:center;padding:4px 12px;background:#0d1117;border-top:1px solid #30363d}.terminal-input-prompt{color:#3fb950;white-space:nowrap;margin-right:4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.terminal-input{flex:1;background:transparent;border:none;color:#e6edf3;font-family:inherit;font-size:inherit;outline:none;caret-color:#e6edf3}.terminal-input::-moz-placeholder{color:#484f58}.terminal-input::placeholder{color:#484f58}.terminal-input:disabled{opacity:.5}.terminal-running{display:flex;align-items:center;gap:4px;padding:4px 12px;font-size:11px;color:#d29922;background:rgba(210,153,34,.1);border-top:1px solid #30363d}.running-spinner{width:12px;height:12px;border:2px solid transparent;border-top-color:currentcolor;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.running-kill{margin-left:auto;padding:2px 8px;background:transparent;border:1px solid #f85149;border-radius:4px;color:#f85149;font-size:10px;cursor:pointer}.running-kill:hover{background:rgba(248,81,73,.15)}.terminal-status{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;background:#161b22;border-top:1px solid #30363d;font-size:11px;color:#6e7681}.terminal-status .status-left,.terminal-status .status-right{display:flex;align-items:center;gap:12px}.clear-btn{padding:2px 8px;background:transparent;border:1px solid #30363d;border-radius:4px;color:#8b949e;font-size:10px;cursor:pointer}.clear-btn:hover{border-color:#58a6ff;color:#58a6ff}@media (max-width:768px){.terminal-tab-bar{overflow-x:auto}.terminal-tab{padding:6px 12px;white-space:nowrap}.terminal-line-number{width:30px;min-width:30px;padding-right:8px}}.pair-programming{display:flex;flex-direction:column;height:100%;background:var(--cl-bg-primary,#0d1117);border-radius:8px;overflow:hidden}.pair-programming.off{opacity:.6;pointer-events:none}.pair-header{justify-content:space-between;padding:12px 16px;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.pair-header,.pair-title{display:flex;align-items:center}.pair-title{gap:8px}.pair-title-icon{font-size:18px}.pair-title-text{font-size:14px;font-weight:600;color:var(--cl-text-primary,#e6edf3)}.pair-title-badge{padding:2px 8px;background:var(--cl-accent-bg,rgba(56,139,253,.15));border-radius:12px;font-size:10px;font-weight:600;color:var(--cl-accent,#58a6ff);text-transform:uppercase}.pair-title-badge.active{background:rgba(63,185,80,.15);color:#3fb950}.mode-selector{display:flex;gap:4px;padding:4px;background:var(--cl-bg-tertiary,#0d1117);border-radius:8px}.mode-option{display:flex;align-items:center;gap:4px;padding:6px 12px;background:transparent;border:none;border-radius:6px;color:var(--cl-text-tertiary,#8b949e);font-size:12px;cursor:pointer;transition:all .15s ease}.mode-option:hover{background:var(--cl-bg-hover,#21262d);color:var(--cl-text-primary,#e6edf3)}.mode-option.active{background:var(--cl-accent-bg,rgba(56,139,253,.15));color:var(--cl-accent,#58a6ff)}.mode-icon{font-size:12px}.session-stats{gap:16px;padding:8px 16px;background:var(--cl-bg-tertiary,#0d1117);border-bottom:1px solid var(--cl-border,#30363d)}.session-stats,.stat{display:flex;align-items:center}.stat{flex-direction:column;gap:2px}.stat-value{font-size:16px;font-weight:600;color:var(--cl-text-primary,#e6edf3)}.stat-label{font-size:10px;color:var(--cl-text-muted,#6e7681);text-transform:uppercase}.stat.success .stat-value{color:var(--cl-accent-green,#3fb950)}.stat-divider{width:1px;height:24px;background:var(--cl-border,#30363d)}.analyzing-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(56,139,253,.1);border-bottom:1px solid var(--cl-border,#30363d)}.analyzing-dots{display:flex;gap:4px}.analyzing-dots span{width:6px;height:6px;background:var(--cl-accent,#58a6ff);border-radius:50%;animation:analyzingBounce 1.4s ease-in-out infinite}.analyzing-dots span:first-child{animation-delay:0s}.analyzing-dots span:nth-child(2){animation-delay:.2s}.analyzing-dots span:nth-child(3){animation-delay:.4s}@keyframes analyzingBounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.analyzing-text{font-size:12px;color:var(--cl-accent,#58a6ff)}.filter-bar{padding:8px 16px;border-bottom:1px solid var(--cl-border,#30363d);overflow-x:auto}.filter-bar,.filter-chip{display:flex;align-items:center;gap:4px}.filter-chip{padding:4px 10px;background:transparent;border:1px solid var(--cl-border,#30363d);border-radius:16px;color:var(--cl-text-tertiary,#8b949e);font-size:11px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.filter-chip:hover{border-color:var(--cl-text-tertiary,#8b949e);color:var(--cl-text-primary,#e6edf3)}.filter-chip.active{background:var(--cl-accent-bg,rgba(56,139,253,.15));border-color:var(--cl-accent,#58a6ff);color:var(--cl-accent,#58a6ff)}.filter-count{display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;background:var(--cl-bg-tertiary,#0d1117);border-radius:8px;font-size:10px;font-weight:600}.suggestions-list{flex:1;overflow-y:auto;padding:12px}.suggestions-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--cl-text-muted,#6e7681);text-align:center}.suggestions-empty-icon{font-size:32px;opacity:.5}.suggestions-empty-text{font-size:13px}.suggestion-group{margin-bottom:16px}.suggestion-group .group-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.group-indicator{width:8px;height:8px;border-radius:50%;background:var(--priority-color,#8b949e)}.priority-critical .group-indicator{background:#f85149}.priority-high .group-indicator{background:#d29922}.priority-medium .group-indicator{background:#58a6ff}.priority-low .group-indicator{background:#8b949e}.suggestion-group .group-title{font-size:11px;font-weight:600;color:var(--cl-text-secondary,#8b949e);text-transform:uppercase}.group-count{font-size:10px;color:var(--cl-text-muted,#6e7681)}.group-items{display:flex;flex-direction:column;gap:8px}.suggestion-card{background:var(--cl-bg-secondary,#161b22);border:1px solid var(--cl-border,#30363d);border-radius:8px;overflow:hidden;transition:all .15s ease}.suggestion-card:hover{border-color:var(--priority-color,var(--cl-border))}.suggestion-card.expanded{border-color:var(--priority-color,var(--cl-accent))}.suggestion-header{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer}.suggestion-icon{font-size:14px}.suggestion-info{flex:1;min-width:0}.suggestion-type{display:block;font-size:10px;color:var(--cl-text-muted,#6e7681);text-transform:uppercase;margin-bottom:2px}.suggestion-title{display:block;font-size:13px;color:var(--cl-text-primary,#e6edf3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggestion-meta{display:flex;align-items:center;gap:8px}.suggestion-confidence{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--cl-text-muted,#6e7681)}.confidence-bar{width:32px;height:4px;background:var(--cl-bg-tertiary,#0d1117);border-radius:2px;overflow:hidden}.confidence-fill{height:100%;background:var(--cl-accent-green,#3fb950);border-radius:2px}.suggestion-dismiss{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--cl-text-muted,#6e7681);font-size:14px;cursor:pointer;opacity:0;transition:all .15s}.suggestion-card:hover .suggestion-dismiss{opacity:1}.suggestion-dismiss:hover{background:rgba(248,81,73,.15);color:#f85149}.suggestion-body{padding:12px;border-top:1px solid var(--cl-border,#30363d);background:var(--cl-bg-tertiary,#0d1117)}.suggestion-description{font-size:13px;color:var(--cl-text-secondary,#8b949e);line-height:1.5;margin-bottom:12px}.suggestion-code{margin-bottom:12px;padding:12px;background:var(--cl-bg-primary,#0d1117);border:1px solid var(--cl-border,#30363d);border-radius:6px;overflow-x:auto}.suggestion-code pre{margin:0}.suggestion-code code{font-family:SF Mono,Fira Code,monospace;font-size:12px;color:var(--cl-text-primary,#e6edf3)}.suggestion-location{display:block;font-size:11px;color:var(--cl-text-muted,#6e7681);margin-bottom:12px}.suggestion-actions{display:flex;gap:8px}.action-accept,.action-reject{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.action-accept{background:var(--cl-accent-green,#3fb950);color:#fff}.action-accept:hover{background:#2ea043}.action-reject{background:var(--cl-bg-secondary,#161b22);border:1px solid var(--cl-border,#30363d);color:var(--cl-text-tertiary,#8b949e)}.action-reject:hover{border-color:#f85149;color:#f85149}.action-icon{font-size:11px}.suggestion-actions kbd{padding:2px 4px;background:hsla(0,0%,100%,.1);border-radius:3px;font-size:10px;font-family:SF Mono,monospace}.ghost-text{color:var(--cl-text-muted,#6e7681);opacity:.5;font-style:italic;pointer-events:none}.inline-annotations{display:flex;flex-direction:column;gap:4px}.annotation{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:12px;cursor:pointer}.annotation-info{background:rgba(56,139,253,.1);color:#58a6ff}.annotation-warning{background:rgba(210,153,34,.1);color:#d29922}.annotation-error{background:rgba(248,81,73,.1);color:#f85149}.annotation-hint{background:rgba(63,185,80,.1);color:#3fb950}.annotation-icon{font-size:11px}.annotation-message{flex:1}.suggestions-list::-webkit-scrollbar{width:6px}.suggestions-list::-webkit-scrollbar-track{background:transparent}.suggestions-list::-webkit-scrollbar-thumb{background:var(--cl-border,#30363d);border-radius:3px}@media (max-width:768px){.pair-header{flex-direction:column;gap:12px;align-items:flex-start}.session-stats{flex-wrap:wrap}.filter-bar{padding:8px 12px}.suggestion-actions{flex-direction:column}}.code-lab-collab{display:flex;flex-direction:column;height:100%;background:var(--cl-bg-primary,#0d1117);border-radius:8px;overflow:hidden}.collab-header{justify-content:space-between;padding:12px 16px;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.collab-header,.collab-title{display:flex;align-items:center}.collab-title{gap:8px}.collab-title-icon{font-size:16px}.collab-title-text{font-size:14px;font-weight:600;color:var(--cl-text-primary,#e6edf3)}.collab-live{display:flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(63,185,80,.15);border-radius:16px;font-size:11px;color:#3fb950}.live-dot{width:6px;height:6px;background:#3fb950;border-radius:50%;animation:livePulse 2s infinite}@keyframes livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.user-count{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--cl-text-tertiary,#8b949e)}.invite-trigger{padding:6px 12px;background:var(--cl-accent,#58a6ff);border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s}.invite-trigger:hover{background:#4c9aed}.user-avatars{display:flex;margin-right:8px}.user-avatar{position:relative;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--avatar-color);border:2px solid var(--cl-bg-secondary,#161b22);cursor:pointer;transition:all .15s;padding:0}.user-avatar:hover{transform:scale(1.1);z-index:10}.user-avatars .user-avatar{margin-left:-8px}.user-avatars .user-avatar:first-child{margin-left:0}.user-avatar img{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}.avatar-initials{font-size:10px;font-weight:600;color:#fff}.avatar-status{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;border:2px solid var(--cl-bg-secondary,#161b22)}.status-active .avatar-status{background:#3fb950}.status-idle .avatar-status{background:#d29922}.status-away .avatar-status{background:#8b949e}.status-busy .avatar-status{background:#f85149}.avatar-typing{position:absolute;bottom:-4px;left:50%;transform:translateX(-50%);font-size:8px;color:var(--cl-accent,#58a6ff);animation:typing 1s infinite}@keyframes typing{0%,to{opacity:1}50%{opacity:.3}}.collab-tabs{display:flex;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.code-lab-collab .tab-btn{flex:1;padding:10px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--cl-text-tertiary,#8b949e);font-size:12px;cursor:pointer;transition:all .15s}.code-lab-collab .tab-btn:hover{color:var(--cl-text-primary,#e6edf3)}.code-lab-collab .tab-btn.active{color:var(--cl-accent,#58a6ff);border-bottom-color:var(--cl-accent,#58a6ff)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:4px;background:var(--cl-bg-tertiary,#0d1117);border-radius:8px;font-size:10px}.collab-content{flex:1;overflow-y:auto}.user-item,.user-list{padding:8px}.user-item{border-radius:8px;transition:background .15s}.user-item:hover{background:var(--cl-bg-hover,#21262d)}.user-item.current{background:var(--cl-accent-bg,rgba(56,139,253,.1))}.user-main{display:flex;align-items:center;gap:10px;cursor:pointer}.user-info{flex:1;min-width:0}.user-name{display:block;font-size:13px;font-weight:500;color:var(--cl-text-primary,#e6edf3)}.user-you{margin-left:4px;font-size:11px;color:var(--cl-text-muted,#6e7681)}.user-activity{display:block;font-size:11px;color:var(--cl-text-tertiary,#8b949e)}.user-role{padding:2px 8px;border-radius:12px;font-size:10px;font-weight:500;text-transform:uppercase}.role-owner{background:rgba(210,153,34,.15);color:#d29922}.role-editor{background:rgba(56,139,253,.15);color:#58a6ff}.role-viewer{background:hsla(212,9%,58%,.15);color:#8b949e}.follow-btn{padding:4px 8px;background:transparent;border:none;font-size:14px;cursor:pointer;opacity:0;transition:opacity .15s}.follow-btn.following,.user-item:hover .follow-btn{opacity:1}.user-actions{display:flex;gap:8px;padding:8px 0 0 42px}.role-select{background:var(--cl-bg-tertiary,#0d1117);border:1px solid var(--cl-border,#30363d);border-radius:4px;color:var(--cl-text-primary,#e6edf3)}.kick-btn,.role-select{padding:4px 8px;font-size:11px}.kick-btn{background:transparent;border:1px solid var(--cl-text-danger,#f85149);border-radius:4px;color:var(--cl-text-danger,#f85149);cursor:pointer}.kick-btn:hover{background:rgba(248,81,73,.15)}.activity-feed{padding:8px}.activity-empty{padding:24px;text-align:center;color:var(--cl-text-muted,#6e7681);font-size:12px}.activity-list{list-style:none;margin:0;padding:0}.activity-item{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:6px;transition:background .15s}.activity-item:hover{background:var(--cl-bg-hover,#21262d)}.activity-icon{font-size:14px}.activity-content{flex:1;font-size:12px}.activity-user{font-weight:500}.activity-message{color:var(--cl-text-secondary,#8b949e)}.activity-time{font-size:10px;color:var(--cl-text-muted,#6e7681)}.invite-panel{padding:12px;background:var(--cl-bg-secondary,#161b22);border-bottom:1px solid var(--cl-border,#30363d)}.invite-email,.invite-link{display:flex;gap:8px;margin-bottom:8px}.invite-link{margin-bottom:0}.invite-input,.link-input{flex:1;padding:8px 12px;background:var(--cl-bg-tertiary,#0d1117);border:1px solid var(--cl-border,#30363d);border-radius:6px;color:var(--cl-text-primary,#e6edf3);font-size:12px}.link-input{font-size:11px;color:var(--cl-text-tertiary,#8b949e)}.copy-btn,.invite-btn{padding:8px 16px;background:var(--cl-accent,#58a6ff);border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer}.copy-btn{background:var(--cl-bg-secondary,#161b22);border:1px solid var(--cl-border,#30363d);color:var(--cl-text-primary,#e6edf3)}.annotations-panel{display:flex;flex-direction:column;height:100%}.annotations-filter{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--cl-border,#30363d)}.annotations-filter button{padding:4px 10px;background:transparent;border:1px solid var(--cl-border,#30363d);border-radius:16px;color:var(--cl-text-tertiary,#8b949e);font-size:11px;cursor:pointer}.annotations-filter button.active,.annotations-filter button:hover{background:var(--cl-accent-bg,rgba(56,139,253,.15));border-color:var(--cl-accent,#58a6ff);color:var(--cl-accent,#58a6ff)}.annotations-empty{padding:24px;text-align:center;color:var(--cl-text-muted,#6e7681);font-size:12px}.annotations-list{flex:1;overflow-y:auto;padding:8px}.annotation-card{padding:12px;background:var(--cl-bg-secondary,#161b22);border:1px solid var(--cl-border,#30363d);border-radius:8px;margin-bottom:8px}.annotation-card.resolved{opacity:.6}.annotation-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.annotation-meta{flex:1}.annotation-user{display:block;font-size:12px;font-weight:500;color:var(--cl-text-primary,#e6edf3)}.annotation-location{font-size:10px;color:var(--cl-text-muted,#6e7681)}.resolve-btn{padding:4px 10px;background:rgba(63,185,80,.15);border:none;border-radius:12px;color:#3fb950;font-size:11px;cursor:pointer}.annotation-content{font-size:13px;color:var(--cl-text-secondary,#c9d1d9);line-height:1.5}.annotation-replies{margin-top:12px;padding-top:8px;border-top:1px solid var(--cl-border,#30363d)}.reply{padding:4px 0;font-size:12px}.reply-user{font-weight:500}.reply-content{color:var(--cl-text-secondary,#8b949e)}.reply-input-row{display:flex;gap:8px;margin-top:8px}.reply-input{flex:1;padding:6px 10px;background:var(--cl-bg-tertiary,#0d1117);border:1px solid var(--cl-border,#30363d);border-radius:4px;color:var(--cl-text-primary,#e6edf3);font-size:12px}.reply-cancel,.reply-send{padding:6px 12px;border:none;border-radius:4px;font-size:11px;cursor:pointer}.reply-send{background:var(--cl-accent,#58a6ff);color:#fff}.add-reply-btn,.reply-cancel{background:transparent;border:1px solid var(--cl-border,#30363d);color:var(--cl-text-tertiary,#8b949e)}.add-reply-btn{margin-top:8px;padding:4px 10px;border-radius:12px;font-size:11px;cursor:pointer}.add-reply-btn:hover{border-color:var(--cl-accent,#58a6ff);color:var(--cl-accent,#58a6ff)}.cursor-indicator{position:absolute;pointer-events:none;z-index:100}.cursor-caret{width:2px;height:18px;background:var(--cursor-color);animation:cursorBlink 1s step-start infinite}@keyframes cursorBlink{50%{opacity:0}}.cursor-label{position:absolute;top:-18px;left:0;padding:2px 6px;background:var(--cursor-color);border-radius:3px 3px 3px 0;font-size:10px;font-weight:500;color:#fff;white-space:nowrap}.annotations-list::-webkit-scrollbar,.collab-content::-webkit-scrollbar{width:6px}.annotations-list::-webkit-scrollbar-track,.collab-content::-webkit-scrollbar-track{background:transparent}.annotations-list::-webkit-scrollbar-thumb,.collab-content::-webkit-scrollbar-thumb{background:var(--cl-border,#30363d);border-radius:3px}