:root{--c-accent-coral: #4A6FA5;--c-accent-coral-soft: rgba(74, 111, 165, .15);--c-accent-coral-hover: #3D5A8A;--c-accent-sage: #6B9080;--c-accent-sage-soft: rgba(107, 144, 128, .15);--c-accent-blue: #5A8FAF;--c-accent-blue-soft: rgba(90, 143, 175, .15);--c-accent-plum: #9B7E9E;--c-accent-plum-soft: rgba(155, 126, 158, .15);--c-status-success: #6B9080;--c-status-warning: #D4A15F;--c-status-error: #C76B6B;--icon-brand: #4A6FA5;--icon-brand-hover: #3D5A8A;--icon-file: #6B9080;--icon-file-hover: #5A7D6E;--icon-action: #5A8FAF;--icon-action-hover: #4A7D9A;--icon-special: #9B7E9E}[data-theme=light]{--c-accent-coral: #3D5A8A;--c-accent-coral-soft: rgba(194, 117, 80, .12);--c-accent-sage: #5A7D6E;--c-accent-sage-soft: rgba(90, 125, 110, .12);--c-accent-blue: #4A7D9A;--c-accent-blue-soft: rgba(74, 125, 154, .12);--c-accent-plum: #8A6E8D;--c-accent-plum-soft: rgba(138, 110, 141, .12)}.app-container{display:flex;height:100vh;height:-webkit-fill-available;overflow:hidden}.sidebar{width:280px;background:var(--c-bg-surface);border-right:1px solid var(--c-border-subtle);display:flex;flex-direction:column;flex-shrink:0}.sidebar-header-compact{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px;border-bottom:none}.brand-compact{display:flex;align-items:center;gap:8px;color:var(--c-accent-main);text-decoration:none;cursor:pointer;transition:opacity .2s ease}.brand-compact:hover{opacity:.8}.brand-compact svg{flex-shrink:0;color:var(--icon-brand, #4A6FA5)}.brand-compact:hover svg{color:var(--icon-brand-hover, #3D5A8A)}.brand-name{font-size:14px;font-weight:600;color:var(--c-text-primary);letter-spacing:-.3px}.session-actions{display:flex;gap:2px}.icon-btn{width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:6px;color:var(--c-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.icon-btn:hover,.icon-btn.active{background:var(--c-accent-dim);color:var(--icon-brand, #4A6FA5)}.project-info-compact{padding:0 12px 10px;border-bottom:1px solid var(--c-border-subtle)}.project-name-compact{font-size:12px;color:var(--c-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-header{padding:24px 20px 20px;border-bottom:1px solid var(--c-border-subtle)}.brand{display:flex;align-items:center;gap:12px;margin-bottom:16px;text-decoration:none;color:inherit;cursor:pointer;transition:opacity .2s ease}.brand:hover{opacity:.8}.project-info{display:flex;align-items:center;gap:10px}#projectName{font-size:13px;font-weight:500;color:var(--c-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#projectPath{font-size:11px;color:var(--c-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-dropdown{position:fixed;width:280px;background:var(--c-bg-panel);border:1px solid var(--c-border);border-radius:12px;box-shadow:var(--shadow-lg);z-index:100;max-height:480px;display:flex;flex-direction:column;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.history-dropdown.hidden{display:none}.history-dropdown-header{padding:14px 16px;border-bottom:1px solid var(--c-border-subtle);font-size:11px;font-weight:600;color:var(--c-text-tertiary);text-transform:uppercase;letter-spacing:1px;background:var(--c-accent-dim)}.history-dropdown-content{flex:1;overflow-y:auto;padding:6px}.history-dropdown-content::-webkit-scrollbar{width:6px}.history-dropdown-content::-webkit-scrollbar-track{background:transparent}.history-dropdown-content::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:3px}.history-dropdown-content::-webkit-scrollbar-thumb:hover{background:var(--c-border-light)}.session-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:all .2s;margin-bottom:4px;border:1px solid transparent}.session-item:hover,.session-item.selected{background:var(--c-accent-dim);border-color:var(--c-border)}.session-item-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--c-text-tertiary);flex-shrink:0;margin-top:2px}.session-item.selected .session-item-icon{color:var(--c-text)}.session-item-content{flex:1;min-width:0}.session-item-title{font-size:12px;color:var(--c-text-primary);line-height:1.4;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:500}.session-item.selected .session-item-title{color:var(--c-text)}.session-item-time{font-size:10px;color:var(--c-text-tertiary);opacity:.7}.file-list-container{flex:1;overflow-y:auto}.file-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;transition:all .15s ease;min-width:fit-content;position:relative;margin:1px 0}.file-item:hover,.file-item.selected{background:var(--c-accent-dim)}.file-item.multi-selected{background:var(--c-accent-dim);border-left:2px solid var(--c-text)}.file-item-checkbox{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;opacity:0;transition:opacity .15s ease}.file-item:hover .file-item-checkbox,.file-item.multi-selected .file-item-checkbox{opacity:1}.file-checkbox{width:14px;height:14px;cursor:pointer;accent-color:var(--c-text)}.file-item.multi-selected .file-item-icon{color:var(--c-text)}.file-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--icon-file, #6B9080);flex-shrink:0}.file-item.selected .file-item-icon{color:var(--icon-brand, #4A6FA5)}.file-item-info{flex:1;min-width:0}.file-item-name{font-size:13px;color:var(--c-text-primary);white-space:nowrap;overflow:visible;min-width:fit-content}.file-item-dir{font-size:10px;color:var(--c-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.file-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--c-text-tertiary)}.file-empty svg{margin-bottom:12px;opacity:.4}.file-empty p{font-size:13px;margin-bottom:4px}.file-empty span{font-size:11px;opacity:.7}.file-loading{display:flex;align-items:center;justify-content:center;padding:40px}.spinner{width:24px;height:24px;border:2px solid var(--c-border-subtle);border-top-color:var(--c-accent-main);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--c-border-subtle);display:flex;align-items:center;justify-content:space-between}.user-profile{display:flex;align-items:center;gap:10px;flex:1}.user-avatar{width:28px;height:28px;background:var(--c-accent-main);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff}#userNameDisplay{font-size:13px;font-weight:500;color:var(--c-text-primary)}.user-controls{display:flex;align-items:center;gap:8px}.sidebar-credits{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:12px;background:var(--c-bg-surface);border:1px solid var(--c-border-subtle);text-decoration:none;color:var(--c-text-secondary);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;cursor:pointer;transition:all .2s ease;margin-left:auto}.sidebar-credits svg{width:14px;height:14px;flex-shrink:0;color:var(--c-accent-coral)}.sidebar-credits:hover{background:var(--c-accent-dim);border-color:var(--c-accent-coral);color:var(--c-text)}.sidebar-credits.credits-low{color:var(--c-status-warning);border-color:var(--c-status-warning)}.sidebar-credits.credits-low svg{color:var(--c-status-warning)}.user-info-container{padding:3px 4px;border-top:1px solid var(--c-border-subtle)}.user-info{display:flex;align-items:center;gap:8px}.user-name{font-size:13px;font-weight:500;color:var(--c-text);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.user-name:hover{color:var(--c-accent-coral)}.logout-icon{cursor:pointer;color:var(--c-text-tertiary);transition:color .2s;flex-shrink:0}.logout-icon:hover{color:var(--c-text-primary)}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--c-border-subtle);background:var(--c-bg-surface);display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-footer .credits-info{display:flex;align-items:center;gap:6px;flex:1}.sidebar-footer .credits-value{font-size:14px;font-weight:600;color:var(--c-text-primary)}.credits-section{padding:16px 20px;border-top:1px solid var(--c-border-subtle)}.credits-display{display:flex;align-items:center;justify-content:space-between}.credits-info{display:flex;align-items:center;gap:8px}.credits-icon{color:var(--icon-special, #9B7E9E)}.credits-amount{font-size:14px;font-weight:600;color:var(--c-text-primary)}.credits-label{font-size:11px;color:var(--c-text-tertiary);margin-left:4px}.recharge-btn{padding:6px 12px;background:transparent;border:1px solid var(--icon-brand, #4A6FA5);border-radius:6px;color:var(--icon-brand, #4A6FA5);font-size:11px;font-weight:500;cursor:pointer;text-decoration:none;transition:all .2s}.recharge-btn:hover{background:var(--icon-brand, #4A6FA5);color:#fff}.file-preview-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center}.file-preview-modal.hidden{display:none}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-dialog{position:relative;width:95%;max-width:1400px;max-height:95vh;background:var(--c-bg-panel);border-radius:12px;box-shadow:var(--shadow-float);border:1px solid var(--c-border-subtle);display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:12px 20px;border-bottom:1px solid var(--c-border-subtle);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-title{font-size:13px;font-weight:500;color:var(--c-text-tertiary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.modal-close-btn{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--c-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.modal-close-btn:hover{background:var(--c-accent-dim);color:var(--c-text)}.modal-body{flex:1;overflow-y:auto;overflow-x:auto;padding:20px;min-height:0;display:flex;flex-direction:column}.markdown-preview-wrapper{width:100%}.markdown-content{font-size:15px;line-height:1.8;color:var(--c-text-primary);font-weight:500}.markdown-line{position:relative;cursor:text}.markdown-line:hover{background:var(--c-accent-dim)}.markdown-content ::selection,.code-preview ::selection,.plain-text-preview ::selection{background:#ea580c;color:#fff}.markdown-content ::-moz-selection,.code-preview ::-moz-selection,.plain-text-preview ::-moz-selection{background:#ea580c;color:#fff}[data-theme=light] .markdown-content ::selection,[data-theme=light] .code-preview ::selection,[data-theme=light] .plain-text-preview ::selection{background:#6366f1;color:#fff}[data-theme=light] .markdown-content ::-moz-selection,[data-theme=light] .code-preview ::-moz-selection,[data-theme=light] .plain-text-preview ::-moz-selection{background:#6366f1;color:#fff}.markdown-content p{margin:14px 0;font-weight:500}.markdown-content pre{background:var(--c-surface);padding:20px;border-radius:8px;font-family:var(--font-mono);font-size:13px;line-height:1.6;overflow-x:auto;border:1px solid var(--c-border);margin:16px 0}.markdown-content table{width:100%;border-collapse:collapse;margin:24px 0;background:var(--c-surface);border-radius:8px;overflow:hidden;border:1px solid var(--c-border)}.markdown-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0}.mermaid-container{margin:24px 0;padding:24px;background:radial-gradient(var(--c-border) 1px,transparent 1px);background-size:16px 16px;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:200px;overflow:auto}.mermaid-container svg{max-width:100%;height:auto}.mermaid-placeholder{margin:24px 0;padding:24px;background:radial-gradient(var(--c-border) 1px,transparent 1px);background-size:16px 16px;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:200px}.code-preview,.plain-text-preview{background:var(--c-bg-surface);padding:20px;border-radius:8px;font-family:var(--font-mono);font-size:13px;line-height:1.6;overflow-x:auto;border:1px solid var(--c-border-subtle)}.loading,.error{text-align:center;padding:48px 20px;color:var(--c-text-tertiary);font-size:14px}.error{color:#dc2626}.stage-toolbar{position:absolute;top:16px;right:20px;z-index:100;display:flex;flex-wrap:nowrap;align-items:center;gap:2px;padding:4px;background:#ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-radius:22px;border:.5px solid rgba(0,0,0,.04);box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008;transition:all .3s cubic-bezier(.25,.1,.25,1)}.stage-toolbar:hover{box-shadow:0 2px 8px #0000000f,0 8px 24px #0000000a}[data-theme=dark] .stage-toolbar{background:#282828b8;border-color:#ffffff0f;box-shadow:0 1px 3px #0003,0 4px 12px #00000026}[data-theme=dark] .stage-toolbar:hover{box-shadow:0 2px 8px #00000040,0 8px 24px #0003}.stage-toolbar .theme-toggle{width:28px;height:28px;border-radius:50%;background:transparent;border:none;color:#00000080;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.25,.1,.25,1);flex-shrink:0}[data-theme=dark] .stage-toolbar .theme-toggle{color:#fff9}.stage-toolbar .theme-toggle:hover{background:#0000000f;color:#000c;transform:scale(1.05)}[data-theme=dark] .stage-toolbar .theme-toggle:hover{background:#ffffff1a;color:#ffffffe6}.stage-toolbar .theme-toggle:active{transform:scale(.92);transition:transform .1s}.stage-toolbar #languageSwitcherContainer{display:flex;align-items:center;flex-shrink:0}.stage-toolbar .language-switcher{height:28px!important;padding:0 10px!important;border-radius:14px!important;background:transparent!important;border:none!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;transition:all .2s cubic-bezier(.25,.1,.25,1);color:#00000080!important;font-size:13px!important;font-weight:500!important;letter-spacing:-.2px!important;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif!important;flex-shrink:0;white-space:nowrap}[data-theme=dark] .stage-toolbar .language-switcher{color:#fff9!important}.stage-toolbar .language-switcher:hover{background:#0000000f!important;color:#000c!important;transform:scale(1.02)}[data-theme=dark] .stage-toolbar .language-switcher:hover{background:#ffffff1a!important;color:#ffffffe6!important}.stage-toolbar .language-switcher:active{transform:scale(.96);transition:transform .1s}.stage-toolbar .language-switcher .lang-icon{display:none!important}.stage{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;overflow:hidden;max-height:100%}.hidden{display:none!important}.no-project-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.no-project-modal{background:var(--c-bg-surface);border:1px solid var(--c-border);border-radius:16px;max-width:480px;width:100%;box-shadow:var(--shadow-float);overflow:hidden}.no-project-modal-header{padding:32px 32px 24px;text-align:center;border-bottom:1px solid var(--c-border)}.no-project-modal-header svg{color:var(--c-text);margin-bottom:16px}.no-project-modal-header h3{font-family:var(--font-sans);font-size:24px;font-weight:600;color:var(--c-text);margin:0}.no-project-modal-body{padding:24px 32px;text-align:center}.no-project-modal-body p{font-size:15px;color:var(--c-text-secondary);line-height:1.6;margin:0}.no-project-modal-footer{padding:24px 32px 32px;display:flex;gap:12px;justify-content:center}.no-project-modal-footer .btn-secondary,.no-project-modal-footer .btn-primary{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.no-project-modal-footer .btn-secondary{background:var(--c-bg-panel);color:var(--c-text-primary);border:1px solid var(--c-border)}.no-project-modal-footer .btn-secondary:hover{background:var(--c-surface);border-color:var(--c-border-light)}.no-project-modal-footer .btn-primary{background:var(--c-text);color:var(--c-bg)}.no-project-modal-footer .btn-primary:hover{opacity:.9;transform:translateY(-1px)}[data-tooltip]{position:relative;cursor:pointer}[data-tooltip]:before,[data-tooltip]:after{position:absolute;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:1000}[data-tooltip]:before{content:attr(data-tooltip);background:var(--c-bg-surface);color:var(--c-text-primary);font-size:12px;font-weight:400;padding:6px 10px;border-radius:6px;border:1px solid var(--c-border);box-shadow:0 4px 12px #00000026;white-space:nowrap;max-width:200px;text-align:center;line-height:1.4}[data-tooltip]:after{content:"";width:0;height:0;border:5px solid transparent}[data-tooltip]:hover:before,[data-tooltip]:hover:after{visibility:visible;opacity:1}[data-tooltip]:before{bottom:100%;left:50%;transform:translate(-50%) translateY(-8px)}[data-tooltip]:after{bottom:100%;left:50%;transform:translate(-50%) translateY(-3px);border-top-color:var(--c-bg-surface);border-bottom:none}.sidebar-action-btn[data-tooltip]:before{bottom:100%;left:50%;transform:translate(-50%) translateY(-8px)}.sidebar-action-btn[data-tooltip]:after{bottom:100%;left:50%;transform:translate(-50%) translateY(-3px);border-top-color:var(--c-bg-surface);border-bottom:none}.file-tree-directory{margin-bottom:0;margin-left:0}.file-tree-directory[data-level="0"]{margin-top:0;margin-left:0}.file-tree-directory[data-level="1"]{margin-left:2px}.file-tree-directory[data-level="2"]{margin-left:4px}.file-tree-directory[data-level="3"]{margin-left:6px}.file-tree-directory[data-level="4"]{margin-left:8px}.file-tree-directory[data-level="5"]{margin-left:10px}.file-tree-directory[data-level="6"]{margin-left:12px}.file-tree-directory[data-level="7"]{margin-left:14px}.file-tree-directory[data-level="8"]{margin-left:16px}.file-tree-directory[data-level="9"]{margin-left:18px}.file-tree-directory[data-level="10"]{margin-left:20px}.directory-toggle{display:flex;align-items:center;gap:3px;padding:4px 6px;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;color:var(--c-text-secondary);transition:all .15s ease;margin:1px 0}.directory-toggle:hover{background:var(--c-accent-dim)}.toggle-icon{transition:transform .2s ease;flex-shrink:0}.folder-icon{color:var(--c-text-tertiary);flex-shrink:0}.directory-name{flex:1;white-space:nowrap;overflow:visible;font-weight:500;min-width:fit-content}.item-count{font-size:11px;color:var(--c-text-tertiary);opacity:.7;margin-left:4px}.directory-content{border-left:1px solid var(--c-border-subtle);padding-left:0;margin-left:0}.file-tree-directory .file-item{margin-left:0;padding-left:0;position:relative}.file-item[data-level]{margin-left:13px}.file-tree-directory .file-item{gap:3px}.file-tree-directory .file-item:before{display:none}.file-preview-modal .modal-body .markdown-content,.file-preview-modal .modal-body .code-preview,.file-preview-modal .modal-body .plain-text-preview{max-width:none;width:fit-content;min-width:100%}.file-preview-modal .modal-body .markdown-content pre,.file-preview-modal .modal-body .code-preview pre,.file-preview-modal .modal-body .plain-text-preview pre{overflow-x:auto;max-width:none;width:fit-content;min-width:100%}.file-preview-modal .modal-body .markdown-content table{width:auto;min-width:100%}.file-preview-modal .modal-body .mermaid-container{overflow:auto}.file-preview-modal .modal-body .mermaid-container svg{max-width:none;width:auto}.file-preview-modal .modal-header{display:flex;justify-content:space-between;align-items:center}.file-preview-modal .modal-header-actions{display:flex;align-items:center;gap:12px}.annotate-whole-file-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--c-bg-panel);border:1px solid var(--c-border-subtle);border-radius:6px;color:var(--c-text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.annotate-whole-file-btn:hover{background:var(--c-bg-hover);color:var(--c-text);border-color:var(--c-border)}.code-preview-wrapper{display:flex;position:relative;overflow-x:auto}.code-line-numbers{display:flex;flex-direction:column;padding:12px 8px;background:var(--c-bg-surface);border-right:1px solid var(--c-border-subtle);-webkit-user-select:none;user-select:none;flex-shrink:0;min-width:50px;text-align:right}.code-line-numbers .line-number{display:block;font-size:12px;line-height:1.5;color:var(--c-text-secondary);font-family:var(--font-mono);padding:0 8px}.code-preview,.plain-text-preview{flex:1;margin:0;padding:12px;background:var(--c-bg-primary);overflow-x:auto}.code-preview .code-line,.plain-text-preview .code-line{display:block;line-height:1.5;font-family:var(--font-mono);font-size:13px}.code-preview .code-line::selection,.plain-text-preview .code-line::selection{background:#ea580c;color:#fff}.code-preview .code-line::-moz-selection,.plain-text-preview .code-line::-moz-selection{background:#ea580c;color:#fff}[data-theme=light] .code-preview .code-line::selection,[data-theme=light] .plain-text-preview .code-line::selection{background:#6366f1;color:#fff}[data-theme=light] .code-preview .code-line::-moz-selection,[data-theme=light] .plain-text-preview .code-line::-moz-selection{background:#6366f1;color:#fff}.annotation-toolbar{position:fixed;display:none;align-items:center;gap:8px;padding:8px 12px;background:var(--c-bg-surface);border:1px solid var(--c-border-subtle);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10001;transform:translate(-50%);opacity:0;transition:opacity .2s ease,transform .2s ease;pointer-events:none}.annotation-toolbar.show{opacity:1;pointer-events:auto}.annotation-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--c-text);color:var(--c-bg);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.annotation-btn:hover{background:var(--c-text);opacity:.9;transform:translateY(-1px)}.annotation-dialog{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;display:flex;align-items:center;justify-content:center}.annotation-dialog-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.annotation-dialog-content{position:relative;width:90%;max-width:600px;max-height:80vh;background:var(--c-bg-surface);border:1px solid var(--c-border-subtle);border-radius:12px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;overflow:hidden}.annotation-dialog-review{max-width:560px;border-radius:16px;box-shadow:0 12px 48px #00000040}.annotation-dialog-review .annotation-dialog-header{padding:20px 24px;border-bottom:1px solid var(--c-border);background:var(--c-surface);display:flex;align-items:center;gap:12px}.annotation-dialog-review .annotation-dialog-icon{width:36px;height:36px;border-radius:8px;background:var(--c-accent-dim);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--c-text)}.annotation-dialog-review .annotation-dialog-title{flex:1;display:flex;flex-direction:column;gap:2px}.annotation-dialog-review .annotation-file-name{font-size:15px;font-weight:600;color:var(--c-text-primary)}.annotation-dialog-review .annotation-line-info{font-size:12px;color:var(--c-text-secondary);display:flex;align-items:center;gap:4px}.annotation-dialog-review .annotation-dialog-body{padding:24px;display:flex;flex-direction:column;gap:20px}.annotation-dialog-review .annotation-review-section,.annotation-dialog-review .annotation-input-section{display:flex;flex-direction:column;gap:10px}.annotation-dialog-review .annotation-section-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--c-text-secondary);text-transform:uppercase;letter-spacing:.5px}.annotation-dialog-review .annotation-section-label svg{color:var(--c-text-secondary)}.annotation-dialog-review .annotation-highlight-box{position:relative;padding:14px 16px;background:var(--c-accent-dim);border-left:4px solid rgba(186,169,147,.6);border-radius:8px}.annotation-dialog-review .annotation-highlight-marker{position:absolute;top:0;left:0;width:100%;height:100%;background:transparent;pointer-events:none;border-radius:8px}.annotation-dialog-review .annotation-text-preview{position:relative;padding:0;font-size:13px;line-height:1.6;max-height:120px;overflow-y:auto;background:transparent;border:none;color:var(--c-text);font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word}.annotation-dialog-review .annotation-input{width:100%;padding:12px 16px;border:1px solid var(--c-border);border-radius:8px;background:var(--c-bg);color:var(--c-text);font-size:14px;line-height:1.6;resize:vertical;min-height:80px;font-family:var(--font-sans);transition:all .2s ease}.annotation-dialog-review .annotation-input:focus{outline:none;border-color:var(--c-text);background:var(--c-bg);box-shadow:0 0 0 3px var(--c-accent-dim)}.annotation-dialog-review .annotation-input::placeholder{color:var(--c-text-tertiary);font-style:italic}.annotation-dialog-review .annotation-dialog-footer{padding:16px 24px;border-top:1px solid var(--c-border);background:var(--c-surface);display:flex;justify-content:flex-end;gap:12px}.annotation-dialog-review .annotation-btn-cancel{padding:10px 20px;background:transparent;border:1px solid var(--c-border-subtle);border-radius:8px;color:var(--c-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.annotation-dialog-review .annotation-btn-cancel:hover{background:var(--c-bg-panel);border-color:var(--c-border);color:var(--c-text-primary)}.annotation-dialog-review .annotation-btn-send{padding:10px 24px;background:var(--c-text);border:none;border-radius:8px;color:var(--c-bg);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;box-shadow:var(--shadow-sm)}.annotation-dialog-review .annotation-btn-send:hover{background:var(--c-text);box-shadow:var(--shadow-md);transform:translateY(-1px);opacity:.9}.annotation-dialog-review .annotation-btn-send:active{transform:translateY(0)}.annotation-dialog-review .annotation-dialog-close{font-size:20px;line-height:1;padding:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--c-text-tertiary);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.annotation-dialog-review .annotation-dialog-close:hover{background:#0000000d;color:var(--c-text-primary)}.annotation-dialog-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--c-border-subtle)}.annotation-dialog-header h4{margin:0;font-size:18px;font-weight:600;color:var(--c-text-primary)}.annotation-dialog-close{background:none;border:none;color:var(--c-text-secondary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.annotation-dialog-close:hover{background:var(--c-bg-hover);color:var(--c-text-primary)}.annotation-dialog-body{padding:24px;overflow-y:auto;flex:1}.annotation-file-info{margin-bottom:20px;padding:12px;background:var(--c-bg-panel);border-radius:8px;border:1px solid var(--c-border-subtle)}.annotation-file-path{font-size:13px;color:var(--c-text);font-family:var(--font-mono);margin-bottom:8px;word-break:break-all}.annotation-line-range{font-size:12px;color:var(--c-text-secondary)}.annotation-selected-text{margin-bottom:20px}.annotation-label{display:block;font-size:13px;font-weight:500;color:var(--c-text-primary);margin-bottom:8px}.annotation-text-preview{padding:12px;background:var(--c-bg-panel);border:1px solid var(--c-border-subtle);border-radius:6px;font-size:12px;font-family:var(--font-mono);color:var(--c-text-secondary);max-height:120px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.annotation-feedback{margin-top:20px}.annotation-input{width:100%;padding:12px;background:var(--c-bg-panel);border:1px solid var(--c-border-subtle);border-radius:6px;font-size:14px;font-family:inherit;color:var(--c-text-primary);resize:vertical;min-height:100px}.annotation-input:focus{outline:none;border-color:var(--c-text);box-shadow:0 0 0 3px var(--c-accent-dim)}.annotation-dialog-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--c-border-subtle)}.annotation-btn-cancel,.annotation-btn-send{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.annotation-btn-cancel{background:var(--c-bg-panel);color:var(--c-text-secondary);border:1px solid var(--c-border-subtle)}.annotation-btn-cancel:hover{background:var(--c-bg-hover);color:var(--c-text-primary)}.annotation-btn-send{background:var(--c-text);color:var(--c-bg)}.annotation-btn-send:hover{opacity:.9;transform:translateY(-1px)}.input-area{display:flex;flex-direction:column}.selected-files-widget{display:none;width:100%;padding:12px 16px 8px;box-sizing:border-box;border-bottom:1px solid rgba(0,0,0,.06)}.selected-files-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.selected-files-label{display:none}.selected-files-items{display:flex;align-items:center;gap:6px;flex:1;flex-wrap:wrap;min-width:0}.selected-file-chip{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--c-accent-dim);border:1px solid var(--c-border);border-radius:6px;cursor:pointer;transition:all .2s ease;flex-shrink:0;max-width:280px}.selected-file-chip:hover{background:var(--c-accent-dim);border-color:var(--c-text-secondary)}.selected-file-chip .selected-file-icon{flex-shrink:0;color:var(--c-text-secondary);width:12px;height:12px}.selected-file-chip-name{font-size:12px;color:var(--c-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.selected-file-chip-remove{background:none;border:none;color:var(--c-text-secondary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0;opacity:.6;width:14px;height:14px}.selected-file-chip-remove:hover{opacity:1;background:var(--c-accent-dim)}.selected-file-chip-remove svg{width:10px;height:10px}.selected-files-clear-all{background:none;border:none;color:var(--c-text-secondary);cursor:pointer;padding:4px 6px;display:flex;align-items:center;gap:2px;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0;margin-left:auto;opacity:.7;font-size:11px}.selected-files-clear-all:hover{background:var(--c-accent-dim);opacity:1}.selected-files-clear-all svg{width:12px;height:12px}.annotation-message{border-left:3px solid rgba(186,169,147,.6);background:var(--c-accent-dim)}.annotation-header{margin-bottom:12px}.annotation-file{display:flex;align-items:center;gap:8px;margin-bottom:8px}.annotation-file-icon{flex-shrink:0;color:var(--c-text-secondary)}.annotation-file-name{font-size:14px;font-weight:500;color:var(--c-text-primary)}.annotation-file-path{font-size:12px;color:var(--c-text-secondary);font-family:var(--font-mono);margin-left:8px}.annotation-line-info{margin-top:4px}.annotation-line-badge{display:inline-block;padding:4px 10px;background:var(--c-text);color:var(--c-bg);border-radius:12px;font-size:11px;font-weight:500}.annotation-line-badge.whole-file{background:var(--c-accent-dim);color:var(--c-text)}.annotation-feedback-content{padding:12px;background:var(--c-bg-panel);border-radius:6px;font-size:14px;line-height:1.6;color:var(--c-text-primary);white-space:pre-wrap;word-break:break-word}.file-tabs-container{display:flex;flex-direction:column;height:100%}.file-tabs-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:transparent;flex-shrink:0;border-bottom:1px solid var(--c-border-subtle)}.file-tabs-group,.file-actions-group{display:flex;gap:2px}.file-action-btn{width:26px;height:26px;padding:0;background:transparent;border:none;border-radius:5px;color:var(--c-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.file-action-btn:hover{background:var(--c-accent-dim);color:var(--c-text)}.file-tab{display:flex;flex-direction:row;align-items:center;gap:4px;padding:5px 8px;background:transparent;border:none;border-radius:5px;color:var(--c-text-tertiary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;position:relative;flex:0 0 auto;justify-content:center;white-space:nowrap;min-width:0}.file-tab:hover{color:var(--c-text-secondary);background:#ffffff08}.file-tab.active{color:var(--c-text);background:var(--c-accent-dim)}.file-tab svg{flex-shrink:0;width:14px;height:14px;opacity:.7}.file-tab.active svg{opacity:1}.tab-badge{background:transparent;color:var(--c-text-tertiary);font-size:11px;font-weight:500;padding:0;min-width:auto;text-align:center;flex-shrink:0}.file-tab.active .tab-badge{background:linear-gradient(135deg,#6b9080,#5a7d6e);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:10px;min-width:18px;box-shadow:0 1px 4px #6b90804d}.file-tab[data-tab=development].active .tab-badge{background:linear-gradient(135deg,#5a8faf,#4a7d9a);box-shadow:0 1px 4px #5a8faf4d}.file-tabs-content{flex:1;overflow-y:auto;position:relative}.file-tab-pane.active .file-category-content{overflow-x:auto;overflow-y:auto;max-height:100%;padding:6px 8px;min-width:100%}.file-tree-directory .file-item,.file-tree-directory .file-item-info{min-width:fit-content}.file-tab-pane{display:none;height:100%;overflow-y:auto}.file-tab-pane.active{display:block}.file-tab-pane .file-category-content{padding:12px}.file-tab-pane .file-empty{padding:40px 20px;text-align:center;color:var(--c-text-tertiary)}.file-tab-pane .file-empty svg{margin-bottom:12px;opacity:.4}.file-tab-pane .file-empty p{font-size:13px;margin-bottom:4px}.file-tab-pane .file-empty span{font-size:11px;opacity:.7}.design-section{margin-bottom:16px}.design-section:last-child{margin-bottom:0}.design-section-title{font-size:11px;font-weight:500;color:var(--c-text-tertiary);padding:0 8px 6px;opacity:.6}.design-section .file-item{padding:8px;border-radius:8px;margin:0 4px}.design-section .file-item:hover{background:var(--c-accent-dim)}.design-section .file-item-dir{display:none}.design-section .file-item-checkbox{opacity:0;transition:opacity .15s}.design-section .file-item:hover .file-item-checkbox,.design-section .file-item.multi-selected .file-item-checkbox{opacity:1}.input-buttons{display:flex;gap:6px;align-items:center}.upload-btn{width:40px;height:40px;background:transparent;border:none;border-radius:50%;cursor:pointer;color:var(--c-text-secondary);transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.upload-btn:hover{background:var(--c-accent-dim);color:var(--c-text)}.upload-btn:active{transform:scale(.95)}.voice-btn{background:transparent;border:none;padding:8px;border-radius:6px;cursor:pointer;color:var(--c-text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.voice-btn:hover{background:var(--c-bg-panel);color:var(--c-text-primary)}.voice-btn.listening,.voice-btn.active{background:#dc26261a;color:#dc2626}.voice-btn.listening:hover,.voice-btn.active:hover{background:#dc262633}.voice-status{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--c-bg-panel);border-radius:8px;margin-top:8px;border:1px solid var(--c-border-subtle);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.voice-wave{display:flex;align-items:center;gap:2px;height:20px}.wave-bar{width:2px;height:8px;background:var(--c-accent-main);border-radius:1px;animation:wave 1.2s ease-in-out infinite}.wave-bar:nth-child(1){animation-delay:0s}.wave-bar:nth-child(2){animation-delay:.1s}.wave-bar:nth-child(3){animation-delay:.2s}.wave-bar:nth-child(4){animation-delay:.3s}.wave-bar:nth-child(5){animation-delay:.4s}@keyframes wave{0%,to{height:8px}50%{height:16px}}#voiceText{font-size:12px;color:var(--c-text-secondary);font-weight:500}.voice-status.recording #voiceText{color:var(--c-accent-main)}.pc-header{display:flex;position:absolute;top:16px;right:20px;z-index:100;align-items:center;justify-content:flex-end;padding:0}.pc-header-actions{display:flex;align-items:center;gap:2px;padding:4px;background:#ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-radius:22px;border:.5px solid rgba(0,0,0,.04);box-shadow:0 1px 3px #0000000a,0 4px 12px #00000008;transition:all .3s cubic-bezier(.25,.1,.25,1)}.pc-header-actions:hover{box-shadow:0 2px 8px #0000000f,0 8px 24px #0000000a}[data-theme=dark] .pc-header-actions{background:#282828b8;border-color:#ffffff0f;box-shadow:0 1px 3px #0003,0 4px 12px #00000026}[data-theme=dark] .pc-header-actions:hover{box-shadow:0 2px 8px #00000040,0 8px 24px #0003}.pc-header .theme-toggle{width:28px;height:28px;border-radius:50%;background:transparent;border:none;color:#00000080;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.25,.1,.25,1);position:relative}[data-theme=dark] .pc-header .theme-toggle{color:#fff9}.pc-header .theme-toggle:hover{background:#0000000f;color:#000c;transform:scale(1.05)}[data-theme=dark] .pc-header .theme-toggle:hover{background:#ffffff1a;color:#ffffffe6}.pc-header .theme-toggle:active{transform:scale(.92);transition:transform .1s}#pcThemeIcon{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none}.pc-header-actions .language-switcher{height:28px!important;padding:0 10px!important;border-radius:14px!important;background:transparent!important;border:none!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;transition:all .2s cubic-bezier(.25,.1,.25,1);color:#00000080!important;font-size:13px!important;font-weight:500!important;letter-spacing:-.2px!important;margin:0!important;box-shadow:none!important;outline:none!important;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,sans-serif!important}[data-theme=dark] .pc-header-actions .language-switcher{color:#fff9!important}.pc-header-actions .language-switcher:hover{background:#0000000f!important;color:#000c!important;transform:scale(1.02)}[data-theme=dark] .pc-header-actions .language-switcher:hover{background:#ffffff1a!important;color:#ffffffe6!important}.pc-header-actions .language-switcher:active{transform:scale(.96);transition:transform .1s}.pc-header-actions .language-switcher .lang-icon{display:none!important}.pc-header-actions .language-switcher .lang-icon{display:none}.pc-header-actions .language-switcher .lang-text{display:inline-block;font-size:13px;font-weight:500;letter-spacing:.2px;color:inherit}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:var(--c-bg-surface);border-bottom:1px solid var(--c-border-subtle);z-index:350;align-items:center;justify-content:space-between;padding:0 16px}.mobile-menu-btn{width:40px;height:40px;background:transparent;border:none;border-radius:8px;color:var(--c-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.mobile-menu-btn:hover{background:var(--c-accent-dim);color:var(--icon-brand, #4A6FA5)}.mobile-menu-btn:active{background:var(--c-accent-dim);transform:scale(.95)}#mobileThemeIcon{width:20px;height:20px;stroke:currentColor;fill:none}.mobile-header-brand{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;letter-spacing:-.3px;flex-shrink:0;text-decoration:none;cursor:pointer;transition:opacity .2s ease}.mobile-header-brand:hover{opacity:.8}.mobile-header-brand svg{color:var(--icon-brand, #4A6FA5)}.mobile-header-brand .brand-name{color:var(--c-text-primary)}.mobile-header-actions{display:flex;align-items:center;gap:4px}.mobile-header-actions .language-switcher{width:auto!important;min-width:40px!important;height:40px!important;padding:0 12px!important;border-radius:8px!important;background:transparent!important;border:none!important;border-width:0!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer;transition:all .2s;color:var(--c-text-secondary)!important;font-size:13px!important;font-weight:500!important;letter-spacing:.2px!important;margin:0!important;box-shadow:none!important;outline:none!important}.mobile-header-actions .language-switcher:hover{background:var(--c-accent-dim)!important;color:var(--c-text)!important;border:none!important;transform:none!important}.mobile-header-actions .language-switcher:active{background:var(--c-accent-dim);transform:scale(.95)}.mobile-header-actions .language-switcher .lang-icon{display:none}.mobile-header-actions .language-switcher .lang-text{display:inline-block;font-size:13px;font-weight:500;letter-spacing:.2px;color:inherit}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:200;opacity:0;transition:opacity .3s ease}.sidebar-overlay.show{opacity:1}@media (max-width: 768px){.pc-header{display:none!important}html,body{height:auto!important;min-height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}.app-container{flex-direction:column;height:auto!important;min-height:100vh!important;position:relative!important;display:block!important}.mobile-header{display:flex;position:fixed!important;top:0;left:0;right:0;z-index:350;background:var(--c-bg-surface)!important}.sidebar-overlay{display:block;pointer-events:none;opacity:0;z-index:299;position:fixed!important}.sidebar-overlay.show{pointer-events:auto;opacity:1}.sidebar{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:280px!important;max-width:85vw!important;height:100dvh!important;z-index:400!important;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);background:var(--c-bg-surface)!important;border-right:1px solid var(--c-border-subtle)!important;overflow-y:auto!important;box-shadow:none;padding-top:56px!important}.sidebar.open{transform:translate(0)!important;box-shadow:4px 0 24px #00000080!important}.page-sidebar .brand{padding:16px 20px!important;margin-bottom:0!important;border-bottom:1px solid var(--c-border-subtle)!important;background:var(--c-bg-surface)!important;display:flex!important;align-items:center!important;gap:12px!important}.page-sidebar .brand .brand-text h1{font-size:18px!important;font-weight:600!important;margin:0!important;color:var(--c-text-primary)!important}.page-sidebar .brand svg{width:28px!important;height:28px!important;flex-shrink:0!important;color:var(--c-accent-main)!important}.stage{width:100%!important;height:auto!important;min-height:calc(100vh - 56px)!important;padding-top:56px!important;display:flex!important;flex-direction:column!important;overflow:visible!important;z-index:1!important}.chat-feed{flex:1!important;overflow-y:visible!important;padding:16px 16px 120px!important}.input-area{position:sticky!important;bottom:0;left:0;right:0;z-index:10;background:linear-gradient(to top,var(--c-bg-base) 85%,transparent)!important;padding:12px 12px calc(12px + env(safe-area-inset-bottom))!important;max-width:100%!important;border-top:none!important}.stage-toolbar{display:none!important}.input-capsule{padding:10px 12px!important;border-radius:24px!important;flex-direction:column!important;gap:8px!important;box-shadow:0 -4px 20px #0003!important}.input-capsule #promptInput{font-size:16px!important;padding:8px 0!important}.model-selector{width:auto!important;margin-right:0!important;margin-bottom:4px!important;align-self:flex-start!important}.model-selector-btn{width:auto!important;justify-content:flex-start!important;padding:4px 8px!important;border-radius:6px!important;font-size:11px!important}.model-dropdown{left:0!important;right:auto!important;min-width:180px!important;width:auto!important;margin-left:0!important;bottom:calc(100% + 8px)!important}.input-row{display:flex!important;align-items:center!important;width:100%!important;gap:6px!important}.input-buttons{gap:4px!important;flex-shrink:0!important}.upload-btn,.voice-btn{width:36px!important;height:36px!important}.send-btn{width:42px!important;height:42px!important;margin-left:6px!important}.scroll-btn{bottom:120px!important;right:20px!important;position:fixed!important}}@media (max-width: 380px){.mobile-brand-name{font-size:13px}.mobile-brand-icon{width:18px;height:18px}.sidebar{width:100%;max-width:100%}.model-selector-btn{padding:3px 6px!important;font-size:10px!important}.model-name{max-width:60px;overflow:hidden;text-overflow:ellipsis}.upload-btn,.voice-btn{width:32px;height:32px}.send-btn{width:38px;height:38px}.input-capsule #promptInput{font-size:15px}}.modal-dialog.browser-view{background:transparent;box-shadow:none;border:none;width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0;margin:0}.modal-dialog.browser-view .modal-header{display:none}.modal-dialog.browser-view .modal-body{padding:0;overflow:hidden;border-radius:0;box-shadow:none;border:none;background:#fff}.browser-preview-container{display:flex;flex-direction:column;flex:1;min-height:500px;background:#fff;margin-bottom:0}.browser-header{height:44px;background:#f1f3f4;display:flex;align-items:center;padding:0 16px;gap:16px;border-bottom:1px solid var(--c-border-subtle);flex-shrink:0}.browser-dots{display:flex;gap:8px;width:60px}.browser-dot{width:12px;height:12px;border-radius:50%}.browser-dot.red{background:#ff5f56}.browser-dot.yellow{background:#ffbd2e}.browser-dot.green{background:#27c93f}.browser-address-bar{flex:1;height:28px;background:var(--c-bg-surface);border-radius:6px;display:flex;align-items:center;padding:0 12px;font-size:11px;color:var(--c-text-tertiary);border:1px solid var(--c-border-subtle);font-family:var(--font-sans);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.browser-iframe-wrapper{flex:1;position:relative;background:#fff;min-height:0}.browser-iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;background:#fff;display:block}.browser-footer{height:48px;background:var(--c-bg-surface);border-top:1px solid var(--c-border-subtle);display:flex;align-items:center;justify-content:flex-end;padding:0 16px;flex-shrink:0}.insufficient-credits-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.insufficient-credits-modal{background:var(--c-bg);border:1px solid var(--c-border);border-radius:16px;padding:32px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d}.insufficient-credits-modal-header{text-align:center;margin-bottom:24px}.insufficient-credits-modal-header svg{color:var(--c-status-warning);margin-bottom:16px}.insufficient-credits-modal-header h3{font-size:20px;font-weight:600;color:var(--c-text);margin:0}.insufficient-credits-modal-body{text-align:center;margin-bottom:24px}.insufficient-credits-modal-body p{color:var(--c-text-secondary);font-size:14px;line-height:1.6;margin:0}.insufficient-credits-modal-footer{display:flex;gap:12px;justify-content:flex-end}.insufficient-credits-modal-footer .btn-secondary,.insufficient-credits-modal-footer .btn-primary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s ease}.insufficient-credits-modal-footer .btn-secondary{background:var(--c-bg-surface);color:var(--c-text);border:1px solid var(--c-border)}.insufficient-credits-modal-footer .btn-secondary:hover{background:var(--c-accent-dim)}.insufficient-credits-modal-footer .btn-primary{background:var(--c-text);color:var(--c-bg)}.insufficient-credits-modal-footer .btn-primary:hover{opacity:.85}.chat-feed{flex:1;overflow-y:auto;overflow-x:hidden;padding:32px 16px 160px;scroll-behavior:smooth}.message-group{margin-bottom:24px;animation:chat-fade-up .4s ease-out}@keyframes chat-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.message-meta{display:flex;align-items:center;gap:10px;margin-bottom:8px}.avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--c-bg);background:var(--icon-brand, var(--c-accent))}.avatar.user{background:var(--icon-action, var(--c-accent));color:#fff}.avatar.assistant,.avatar.ai{background:#3b82f6;color:#fff}.avatar.system{background:var(--icon-file, var(--c-accent))}.sender-name{font-size:13px;font-weight:600;color:var(--c-text-secondary)}.content-card{background:var(--c-surface);color:var(--c-text);padding:18px 20px;border-radius:12px;border:1px solid var(--c-border-subtle);box-shadow:var(--shadow-sm, 0 2px 6px rgba(0,0,0,.08));line-height:1.7;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.message-group.user .content-card{border:1px solid var(--c-border)}.content-card pre{background:var(--c-surface-elevated, var(--c-surface));padding:12px;border-radius:8px;overflow-x:auto;border:1px solid var(--c-border-subtle)}.tool-block{background:var(--c-surface);border:1px solid var(--c-border-subtle);border-left:3px solid var(--icon-file, var(--c-accent));padding:12px 14px;border-radius:10px;font-size:13px;color:var(--c-text-secondary)}.tool-content{background:var(--c-surface-elevated, var(--c-surface));padding:10px 12px;border-radius:6px;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:12px;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;word-break:break-all;margin-top:8px}.streaming-json{white-space:pre-wrap!important;word-wrap:break-word!important;word-break:break-all!important;overflow-x:hidden!important;overflow-y:auto;max-height:200px}.todo-list{background:var(--c-surface);border:1px solid var(--c-border-subtle);border-radius:12px;padding:16px}.todo-item{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px dashed var(--c-border-subtle)}.todo-item:last-child{border-bottom:none}.todo-text{font-size:13px;color:var(--c-text)}.todo-item.completed .todo-text{color:var(--c-text-tertiary);text-decoration:line-through}.typing-indicator{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;background:transparent;border-radius:14px}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--c-gold, var(--c-accent));opacity:.6;animation:typing-bounce 1.3s infinite ease-in-out}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.scroll-btn{position:fixed;bottom:120px;right:32px;width:40px;height:40px;border-radius:50%;border:1px solid var(--c-border-subtle);background:var(--c-surface);color:var(--c-text);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm, 0 2px 6px rgba(0,0,0,.08));opacity:0;pointer-events:none;transition:all .2s ease}.scroll-btn.show{opacity:1;pointer-events:auto}.input-area{position:sticky;bottom:0;left:0;right:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top,var(--c-bg) 70%,transparent)}.input-capsule{background:var(--c-surface);border:1px solid var(--c-border-subtle);border-radius:20px;padding:10px 12px;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow-md, 0 8px 24px rgba(0,0,0,.08))}.input-row{flex:1;display:flex;align-items:center;gap:8px}.input-row textarea,#promptInput{flex:1;border:none;background:transparent;font-family:var(--font-sans);font-size:15px;color:var(--c-text);resize:none;line-height:1.5}.input-row textarea:focus,#promptInput:focus{outline:none}.send-btn{width:42px;height:42px;border-radius:50%;border:none;background:var(--icon-brand, var(--c-accent));color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.send-btn:hover{transform:scale(1.05);box-shadow:0 6px 18px #0000001f}.send-btn.stop-mode{background:#dc2626}.questions-message{padding:0;border:none;background:transparent}.questions-intro,.questions-footer{color:var(--c-text-secondary);font-size:13px;line-height:1.5;margin-bottom:10px}.questions-list{display:flex;flex-direction:column;gap:12px}.question-card{padding:0}.question-header{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}.question-number{font-size:12px;font-weight:600;color:var(--icon-brand, var(--c-accent));min-width:16px}.question-text{font-size:13px;font-weight:600;color:var(--c-text);line-height:1.4}.question-options{display:flex;flex-direction:column;gap:6px;margin-left:24px}.question-option{display:flex;align-items:flex-start;gap:8px;padding:4px 0;cursor:pointer;color:var(--c-text-secondary)}.question-option input[type=checkbox]{margin-top:2px;accent-color:var(--icon-brand, var(--c-accent))}.option-key{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid var(--c-border);border-radius:3px;font-size:10px;font-weight:700;color:var(--c-text-tertiary)}.option-text{font-size:13px;color:var(--c-text-secondary);line-height:1.4;display:flex;flex-direction:column;gap:2px}.option-label{font-weight:500;color:var(--c-text-primary)}.option-description{font-size:11px;color:var(--c-text-tertiary);line-height:1.5}.questions-actions{margin-top:8px}.questions-submit-btn{padding:8px 14px;border:none;border-radius:8px;background:var(--icon-brand, var(--c-accent));color:#fff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #0000001f}.questions-submit-btn:hover{opacity:.9}.markdown-content{font-size:15px;line-height:1.8;color:var(--c-text-primary);font-weight:500;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.content-card.markdown-content{max-width:100%}.markdown-content p{margin:14px 0;font-weight:500;max-width:100%}.markdown-content h1{font-family:var(--font-sans);font-size:28px;color:var(--c-text);margin:32px 0 20px;font-weight:600;line-height:1.3}.markdown-content h2{font-size:20px;margin:28px 0 16px;color:var(--c-text);font-weight:600;line-height:1.4}.markdown-content h3{font-size:18px;margin:24px 0 14px;color:var(--c-text-primary);font-weight:600;line-height:1.4}.markdown-content h4{font-size:16px;margin:20px 0 12px;color:var(--c-text-primary);font-weight:600;line-height:1.4}.markdown-content strong{font-weight:600;color:var(--c-text-primary)}.markdown-content em{font-style:italic;color:var(--c-text-primary)}.markdown-content code{background:var(--c-surface)!important;padding:3px 8px;border-radius:4px;font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--c-text)!important;border:1px solid var(--c-border)}.markdown-content pre{background:var(--c-surface);padding:20px;border-radius:8px;font-family:var(--font-mono);font-size:13px;line-height:1.6;overflow-x:auto;border:1px solid var(--c-border);margin:16px 0;max-width:100%;box-sizing:border-box}.markdown-content pre code{background:transparent;padding:0;border:none;color:var(--c-text);font-weight:500}.markdown-content blockquote{border-left:3px solid rgba(186,169,147,.6);padding:12px 20px;margin:16px 0;background:var(--c-accent-dim);color:var(--c-text);font-style:italic;font-weight:500;border-radius:0 6px 6px 0}.markdown-content ul,.markdown-content ol{margin:16px 0;padding-left:24px}.markdown-content li{margin:8px 0;line-height:1.7;font-weight:500}.markdown-content a{color:var(--c-text);text-decoration:none;border-bottom:1px solid var(--c-text-secondary);transition:all .2s}.markdown-content a:hover{color:var(--c-text);border-bottom-color:var(--c-text)}.markdown-content hr{border:none;border-top:1px solid var(--c-border);margin:32px 0}.markdown-content table{width:100%;max-width:100%;border-collapse:collapse;margin:24px 0;background:var(--c-surface);border-radius:8px;overflow:hidden;border:1px solid var(--c-border);box-sizing:border-box}.markdown-content table thead{background:var(--c-accent-dim)}.markdown-content table th{padding:14px 16px;text-align:left;font-weight:600;color:var(--c-text);font-size:14px;border-bottom:2px solid var(--c-border)}.markdown-content table td{padding:12px 16px;border-bottom:1px solid var(--c-border);color:var(--c-text-primary);font-size:14px;font-weight:500}.markdown-content table tbody tr:hover{background:var(--c-accent-dim)}.markdown-content table tbody tr:last-child td{border-bottom:none}.markdown-content table code{background:var(--c-accent-dim);color:var(--c-text);padding:2px 6px;border:none}.markdown-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0;display:block}.mermaid-container{margin:24px 0;padding:24px;background:radial-gradient(var(--c-border) 1px,transparent 1px);background-size:16px 16px;border-radius:12px;display:flex;align-items:center;justify-content:center;min-height:200px;overflow:auto;max-width:100%;box-sizing:border-box}.mermaid-container svg{max-width:100%;height:auto;display:block}.mermaid-placeholder{margin:24px 0;padding:24px;background:radial-gradient(var(--c-border) 1px,transparent 1px);background-size:16px 16px;border-radius:12px;min-height:200px;display:flex;align-items:center;justify-content:center;color:var(--c-text-tertiary)}@media (max-width: 768px){.chat-feed{padding:20px 12px 140px}.input-area{padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px))}.input-capsule{border-radius:16px;flex-direction:column}.input-row{width:100%}}
