:root{--bg: #0c0c0c;--bg-surface: #111111;--border: #303030;--text: #d4d4d4;--text-muted: #6a6a6a;--primary: #10b981;--primary-light: #6ee7b7;--success: #10b981;--error: #ef4444;--warning: #eab308;--accent: #34d399;--white: #e5e5e5;--info: #6ee7b7;--focus-ring: 0 0 0 2px var(--primary)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:SF Mono,Fira Code,JetBrains Mono,Cascadia Code,Menlo,Monaco,Courier New,monospace;font-size:13px;background:var(--bg-surface);color:var(--text);height:var(--vh, 100vh);overflow:hidden;line-height:1.5}#root{height:var(--vh, 100vh)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.terminal{display:flex;flex-direction:column;height:100%;max-width:1000px;margin:0 auto;overflow:hidden}.terminal-header{padding:8px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.terminal-header-left{display:flex;align-items:center;gap:12px}.terminal-header-title{color:var(--primary);font-weight:700;font-size:13px}.terminal-header-meta{color:var(--text-muted);font-size:12px}.profile-selector{background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:3px;padding:4px 8px;font-family:inherit;font-size:12px;cursor:pointer;min-height:32px}.profile-selector:focus-visible{border-color:var(--primary)}.terminal-output{flex:1;overflow-y:auto;padding:16px;min-height:0}.terminal-output::-webkit-scrollbar{width:6px}.terminal-output::-webkit-scrollbar-track{background:transparent}.terminal-output::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.intro{padding:8px 0}.intro-border{color:var(--primary);overflow:hidden}.intro-banner{color:var(--primary);font-weight:700;overflow:hidden}.intro-logo{color:var(--primary);font-weight:700;line-height:1.15;margin:8px 0;overflow-x:auto}.intro-title{color:var(--text-muted);margin:4px 0 0}.intro-subtitle{color:var(--text-muted)}.intro-meta{margin-top:8px;color:var(--text-muted)}.intro-meta .label{color:var(--text-muted)}.intro-meta .value{color:var(--primary)}.intro-meta .sep{color:var(--text-muted)}.intro-helper{margin-top:12px;color:var(--text-muted)}.intro-prompts{margin-top:4px}.intro-prompt{color:var(--text);cursor:pointer;padding:6px 4px;background:none;border:none;font-family:inherit;font-size:inherit;text-align:left;display:block;width:100%;line-height:1.5}.intro-prompt:hover,.intro-prompt:focus-visible{color:var(--primary-light)}.intro-prompt .num{color:var(--primary);margin-right:4px}.separator{border-top:1px solid var(--border);margin:8px 0}.user-query{margin:8px 0}.user-query-prompt{color:var(--primary);margin-right:6px}.user-query-text{color:var(--white)}.tool-event{padding:2px 0;display:flex;align-items:flex-start;gap:6px}.tool-marker{color:var(--primary);flex-shrink:0}.tool-marker.running{color:var(--warning)}.tool-marker.error{color:var(--error)}.tool-marker.approved{color:var(--success)}.tool-marker.denied{color:var(--error)}.tool-step,.tool-label{color:var(--text-muted)}.tool-name{color:var(--white);font-weight:500}.tool-args{color:var(--text-muted);font-size:12px}.tool-result-line{padding-left:20px;color:var(--text-muted)}.tool-result-line .icon{margin-right:4px}.tool-duration{color:var(--text-muted)}.tool-error-msg{color:var(--error)}.thinking-line{color:var(--text-muted);font-style:italic;padding:2px 0}.thinking-line .marker{color:var(--warning);margin-right:6px;font-style:normal}.working-indicator{padding:4px 0;color:var(--text-muted);display:flex;align-items:center;gap:6px}.working-indicator .spinner{color:var(--warning);animation:spin 1s linear infinite;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.assistant-answer{padding:8px 0;line-height:1.6}.assistant-answer h2,.assistant-answer h3{color:var(--primary-light);font-size:13px;font-weight:700;margin:12px 0 4px}.assistant-answer p{margin:4px 0}.assistant-answer ul,.assistant-answer ol{padding-left:16px;margin:4px 0}.assistant-answer li{margin:2px 0}.assistant-answer li::marker{color:var(--primary)}.assistant-answer strong{color:var(--white);font-weight:600}.assistant-answer em{color:var(--text-muted)}.assistant-answer a{color:var(--primary);text-decoration:none}.assistant-answer a:hover{text-decoration:underline}.assistant-answer code{background:var(--bg-surface);padding:1px 4px;border-radius:2px;font-size:12px}.assistant-answer pre{background:var(--bg-surface);border:1px solid var(--border);padding:10px;border-radius:3px;overflow-x:auto;margin:6px 0;font-size:12px}.assistant-answer pre code{background:none;padding:0}.assistant-answer table{border-collapse:collapse;margin:6px 0;font-size:12px}.assistant-answer th,.assistant-answer td{border:1px solid var(--border);padding:4px 10px;text-align:left}.assistant-answer th{background:var(--bg-surface);color:var(--white);font-weight:600}.assistant-answer blockquote{border-left:2px solid var(--border);padding-left:10px;color:var(--text-muted);margin:6px 0}.stats-line{color:var(--text-muted);font-size:12px;padding:4px 0}.stats-line .marker{color:var(--warning);margin-right:6px}.approval-block{margin:8px 0;max-width:100%;overflow:hidden}.approval-border{color:var(--warning);overflow:hidden;max-width:100%}.approval-title{color:var(--warning);font-weight:700;padding:4px 0}.approval-tool-line{color:var(--white);padding:2px 0;word-break:break-word}.approval-detail{color:var(--text-muted);font-size:12px;padding:2px 0;word-break:break-word}.approval-question{color:var(--text-muted);padding:4px 0}.approval-options{padding:4px 0;display:flex;flex-direction:column;gap:2px}.approval-option{background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;padding:10px 8px;min-height:44px;display:flex;align-items:center;border-radius:4px;transition:background .1s}.approval-option:hover{color:var(--primary-light);background:var(--bg-surface)}.approval-option:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.approval-option .arrow{color:var(--primary);margin-right:4px}.approval-option .key{color:var(--text-muted);margin-left:8px;font-size:11px}.approval-footer{color:var(--text-muted);font-size:11px;padding:4px 0}.terminal-input-area{border-top:1px solid var(--border);padding:8px 16px;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}.input-row{display:flex;align-items:center;gap:8px}.input-row .input-bar-container{flex:1}.terminal-input-form{display:flex;align-items:center;gap:0}.input-prompt{color:var(--primary);font-weight:700;margin-right:8px;flex-shrink:0}.terminal-input{flex:1;background:none;border:none;color:var(--white);font-family:inherit;font-size:13px;outline:none;caret-color:var(--primary);min-height:44px}.terminal-input::placeholder{color:var(--text-muted)}.terminal-input:disabled{opacity:.5}.terminal-error{color:var(--error);font-size:12px;margin-top:4px}.tool-block{margin:2px 0}.tool-phase{color:var(--primary);margin-right:2px}.tool-detail-line{padding-left:20px;color:var(--text-muted);font-size:12px;padding-top:1px;padding-bottom:1px}.tool-error-line{color:var(--error)}.tool-warning-line{color:var(--warning)}.tool-approved-line{color:var(--success)}.tool-denied-detail{color:var(--warning)}.sources-toggle{background:none;border:none;color:var(--primary);font-family:inherit;font-size:12px;cursor:pointer;margin-left:8px;text-decoration:underline;min-height:32px;padding:4px 8px}.sources-toggle:hover{color:var(--primary-light)}.tool-sources-list{padding-left:20px;margin:2px 0 4px}.tool-source-entry{font-size:12px;color:var(--text-muted);padding:1px 0}.tool-source-entry .source-bullet{color:var(--text-muted);margin-right:6px}.tool-source-entry a{color:var(--primary);text-decoration:none}.tool-source-entry a:hover{text-decoration:underline}.tool-source-entry .source-meta{color:var(--text-muted);font-size:11px}.context-event,.memory-event{color:var(--text-muted);padding:2px 0;font-size:12px}.context-event .tool-marker,.memory-event .marker,.answer-marker{color:var(--primary);margin-right:6px}.assistant-block{margin:4px 0}.input-bar-container{position:relative}.slash-autocomplete{position:absolute;bottom:calc(100% + 8px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;max-height:250px;overflow-y:auto;z-index:50;box-shadow:0 -4px 16px #0000004d}.slash-autocomplete-item{display:flex;gap:12px;padding:10px 12px;cursor:pointer;font-size:13px;min-height:44px;align-items:center}.slash-autocomplete-item:hover,.slash-autocomplete-item.active{background:var(--bg)}.slash-autocomplete-item .slash-cmd{color:var(--primary);font-weight:500;min-width:120px}.slash-autocomplete-item .slash-desc{color:var(--text-muted)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:100}.modal-terminal{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:16px 20px;min-width:400px;max-width:500px}.modal-title{color:var(--primary);font-weight:700;font-size:14px;margin-bottom:8px}.modal-options{display:flex;flex-direction:column;gap:2px;padding:8px 0}.modal-option{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;padding:10px 8px;min-height:44px;border-radius:4px;transition:background .1s}.modal-option:hover{color:var(--primary-light);background:var(--bg-surface)}.modal-option.option-disabled{color:var(--text-muted);cursor:not-allowed}.modal-option .option-arrow{color:var(--primary)}.modal-option .option-meta{color:var(--text-muted);margin-left:auto;font-size:11px}.modal-option .option-missing{color:var(--error);margin-left:auto;font-size:11px}.modal-option .option-ready{color:var(--success);margin-left:auto}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px}.modal-back{background:none;border:none;color:var(--primary);font-family:inherit;font-size:12px;cursor:pointer;min-height:36px;padding:4px 8px}.modal-back:hover{color:var(--primary-light)}.modal-hint{color:var(--text-muted);font-size:11px}.clarification-block{margin:8px 0;padding:4px 0}.clarification-question{color:var(--white);padding:4px 0}.clarification-question .marker{color:var(--warning);margin-right:6px}.clarification-options{display:flex;flex-direction:column;gap:2px;padding:4px 0 4px 16px}.clarification-option{display:flex;gap:6px;background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;padding:8px 4px;min-height:44px;align-items:center}.clarification-option:hover{color:var(--primary-light)}.clarification-option .option-num{color:var(--primary)}.clarification-option .option-desc{color:var(--text-muted)}.clarification-hint{color:var(--text-muted);font-size:12px;padding:4px 0}.app-shell{display:flex;flex-direction:column;height:var(--vh, 100vh)}.app-top-bar{display:flex;justify-content:space-between;align-items:center;background:var(--bg-surface);border-bottom:1px solid var(--border);padding:0 8px;padding-top:env(safe-area-inset-top,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);min-height:calc(44px + env(safe-area-inset-top,0px));flex-shrink:0}.app-top-actions{display:flex;gap:8px;align-items:center;padding-right:4px}.app-main{flex:1;display:flex;overflow:hidden;min-height:0}.session-tabs{display:flex;gap:0;overflow-x:auto;flex:1}.session-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;cursor:pointer;font-size:12px;color:var(--text-muted);border-right:1px solid var(--border);white-space:nowrap;background:none;border-top:none;border-bottom:none;border-left:none;font-family:inherit;min-height:40px}.session-tab:hover{color:var(--text)}.session-tab.active{color:var(--primary);background:var(--bg)}.session-tab .tab-count{background:var(--border);color:var(--text-muted);font-size:10px;padding:0 4px;border-radius:8px}.session-tab .tab-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;padding:4px 6px;line-height:1;border-radius:3px;min-width:28px;min-height:28px;display:flex;align-items:center;justify-content:center}.session-tab .tab-close:hover{color:var(--error);background:#ef44441a}.session-tab-new{background:none;border:none;border-right:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:16px;padding:4px 12px;min-height:40px;min-width:44px}.session-tab-new:hover{color:var(--primary)}.theme-toggle{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:14px;padding:6px 10px;line-height:1;min-height:32px;min-width:32px;display:flex;align-items:center;justify-content:center}.theme-toggle:hover{color:var(--primary);border-color:var(--primary)}.export-btn{background:none;border:1px solid var(--border);border-radius:3px;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:11px;padding:6px 10px;min-height:32px}.export-btn:hover{color:var(--primary);border-color:var(--primary)}.header-actions{display:flex;gap:8px;align-items:center}.guided-qa-block{margin:8px 0;padding:8px 0}.guided-qa-title{color:var(--primary);font-weight:600;padding:4px 0}.guided-qa-title .marker,.guided-qa-progress .marker{color:var(--warning);margin-right:6px}.guided-qa-progress{color:var(--text-muted);font-size:12px;padding:2px 0}.guided-qa-question{color:var(--white);font-weight:500;padding:4px 0}.guided-qa-hint{color:var(--text-muted);font-size:12px;padding:2px 0}.guided-qa-options{display:flex;flex-direction:column;gap:2px;padding:4px 0}.guided-qa-option{display:flex;gap:6px;background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;padding:8px;min-height:44px;align-items:center;border-radius:4px;transition:background .1s}.guided-qa-option:hover{color:var(--primary-light);background:var(--bg-surface)}.guided-qa-option .option-arrow,.guided-qa-option .option-num{color:var(--primary)}.guided-qa-option .option-desc{color:var(--text-muted)}.guided-qa-text{padding:4px 0}.guided-qa-text input{background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-family:inherit;font-size:13px;padding:10px;width:100%;max-width:400px;min-height:44px}.guided-qa-text input:focus-visible{border-color:var(--primary);outline:none;box-shadow:var(--focus-ring)}.guided-qa-actions{display:flex;gap:8px;padding:6px 0}.guided-qa-skip,.guided-qa-cancel{background:none;border:none;color:var(--text-muted);font-family:inherit;font-size:12px;cursor:pointer;padding:8px 12px;min-height:36px}.guided-qa-skip:hover,.guided-qa-cancel:hover{color:var(--primary)}@media(max-width:768px){body{font-size:12px}.terminal{max-width:100%}.terminal-header{flex-direction:column;gap:6px;align-items:flex-start;padding:8px 12px}.header-actions{width:100%;justify-content:space-between}.profile-selector{font-size:11px;max-width:150px}.terminal-output{padding:8px 12px}.intro-logo{font-size:6px;overflow-x:auto}.terminal-input-area{padding:8px 12px;padding-bottom:max(8px,env(safe-area-inset-bottom,0px))}.terminal-input{font-size:16px}.tool-event{flex-wrap:wrap}.tool-args{display:none}.modal-terminal{min-width:unset;width:95%;margin:0 auto}.session-tabs{overflow-x:auto}.session-tab{padding:8px 10px;font-size:11px}.assistant-answer table{font-size:11px;display:block;overflow-x:auto}.slash-autocomplete{max-height:40vh;position:fixed;bottom:calc(60px + env(safe-area-inset-bottom,0px));left:8px;right:8px;border-radius:12px}.approval-block{margin:4px 0}.intro-helper,.intro-prompt{font-size:12px}.export-btn{font-size:10px;padding:4px 6px}}@media(max-width:480px){.intro-banner,.intro-border{font-size:10px}.intro-logo{font-size:5px}.app-top-bar{padding:0 4px}}.header-menu{position:relative}.header-menu-trigger{background:none;border:1px solid var(--border);border-radius:4px;color:var(--text-muted);cursor:pointer;font-size:16px;padding:6px 10px;line-height:1;min-height:32px;min-width:32px;display:flex;align-items:center;justify-content:center}.header-menu-trigger:hover{color:var(--primary);border-color:var(--primary)}.header-menu-dropdown{position:absolute;right:0;top:100%;margin-top:4px;background:var(--bg);border:1px solid var(--border);border-radius:6px;min-width:260px;z-index:60;padding:4px 0;box-shadow:0 8px 24px #0006}.header-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;min-height:44px}.header-menu-item:hover{background:var(--bg-surface);color:var(--primary)}.header-menu-item .menu-label{flex:1}.header-menu-item .menu-detail{color:var(--text-muted);font-size:11px}.header-menu-item .menu-shortcut{color:var(--text-muted);font-size:11px;margin-left:auto}.profile-panel{background:var(--bg);border:1px solid var(--border);border-radius:6px;display:flex;min-height:400px;max-width:700px;width:90%}.profile-panel-left{width:280px;padding:16px;flex-shrink:0}.profile-list{display:flex;flex-direction:column;gap:2px;padding:8px 0}.profile-item{display:flex;align-items:center;gap:10px;padding:10px;background:none;border:none;border-radius:4px;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;min-height:44px;transition:background .1s}.profile-item:hover,.profile-item.active{background:var(--bg-surface)}.profile-dot{font-size:10px;flex-shrink:0}.profile-item-info{display:flex;flex-direction:column}.profile-item-name{font-weight:600;font-size:13px}.profile-item-vertical{font-size:11px;color:var(--text-muted)}.profile-panel-right{flex:1;border-left:2px solid var(--border);padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.profile-preview-logo{font-size:7px;line-height:1.1;margin:0 0 12px}.profile-preview-title{font-size:16px;font-weight:700;margin-bottom:6px}.profile-preview-subtitle{font-size:12px;color:var(--text-muted);margin-bottom:4px}.profile-preview-desc{font-size:11px;color:var(--text-muted);max-width:300px}.keys-panel{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:16px 20px;min-width:500px;max-width:600px;max-height:80vh;display:flex;flex-direction:column}.keys-subtitle{font-size:11px;color:var(--text-muted);margin-bottom:8px}.keys-content{flex:1;overflow-y:auto;padding:4px 0}.keys-group{margin-bottom:12px}.keys-group-title{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600;padding:4px 0;margin-bottom:4px}.keys-row{display:flex;align-items:center;justify-content:space-between;padding:5px 0;gap:8px;min-height:40px}.keys-row-left{display:flex;align-items:center;gap:8px;min-width:0}.keys-status{font-size:12px;flex-shrink:0}.keys-status.configured{color:var(--success)}.keys-status.missing{color:var(--text-muted)}.keys-label{font-size:13px;color:var(--text)}.keys-masked{font-size:11px;color:var(--text-muted)}.keys-row-right{display:flex;gap:6px;align-items:center;flex-shrink:0}.keys-edit-form{display:flex;gap:4px;align-items:center}.keys-input{background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-family:inherit;font-size:12px;padding:8px;width:180px;min-height:36px}.keys-input:focus-visible{border-color:var(--primary);outline:none;box-shadow:var(--focus-ring)}.keys-save-btn{background:var(--primary);border:none;border-radius:3px;color:#000;font-family:inherit;font-size:11px;font-weight:600;padding:8px 12px;cursor:pointer;min-height:36px}.keys-cancel-btn{background:none;border:none;color:var(--text-muted);font-size:14px;cursor:pointer;padding:6px;min-height:36px;min-width:36px}.keys-edit-btn{background:none;border:1px solid var(--border);border-radius:3px;color:var(--text-muted);font-family:inherit;font-size:11px;padding:6px 10px;cursor:pointer;min-height:32px}.keys-edit-btn:hover{color:var(--primary);border-color:var(--primary)}.keys-remove-btn{background:none;border:none;color:var(--text-muted);font-family:inherit;font-size:11px;cursor:pointer;padding:6px 8px;min-height:32px}.keys-remove-btn:hover{color:var(--error)}@media(max-width:768px){.profile-panel{flex-direction:column;width:95%}.profile-panel-left{width:100%}.profile-panel-right{border-left:none;border-top:1px solid var(--border)}.keys-panel{min-width:unset;width:95%}.keys-input{width:120px}.header-menu-dropdown{min-width:200px}}.explorer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.explorer-panel{background:var(--bg);border:1px solid var(--border);border-radius:6px;display:flex;width:95%;max-width:1100px;height:80vh;overflow:hidden}.explorer-sidebar{width:220px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg-surface);flex-shrink:0}.explorer-section-title{padding:10px 12px 6px;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.explorer-ws-list{flex:1;overflow-y:auto;padding:4px 0}.explorer-ws-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer;text-align:left;min-height:40px}.explorer-ws-item:hover{background:var(--bg)}.explorer-ws-item.active{background:var(--bg);color:var(--primary)}.explorer-ws-item .ws-dot{font-size:8px;color:var(--text-muted)}.explorer-ws-item.active .ws-dot{color:var(--primary)}.explorer-create{display:flex;gap:4px;padding:8px;border-top:1px solid var(--border)}.explorer-input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-family:inherit;font-size:12px;padding:8px;min-height:36px}.explorer-input:focus-visible{border-color:var(--primary);outline:none;box-shadow:var(--focus-ring)}.explorer-btn{background:var(--primary);border:none;border-radius:3px;color:#000;font-weight:700;font-size:16px;width:36px;min-height:36px;cursor:pointer}.explorer-btn:hover{opacity:.9}.explorer-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.explorer-empty{flex:1;display:flex;align-items:center;justify-content:center}.explorer-empty-text{color:var(--text-muted);font-size:13px;text-align:center;padding:20px}.explorer-upload-zone{border-bottom:1px solid var(--border);padding:10px 16px;transition:background .15s}.explorer-upload-zone.drag-over{background:#10b9811a;border-color:var(--primary)}.upload-content{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.upload-icon{font-size:16px}.upload-browse{background:none;border:none;color:var(--primary);font-family:inherit;font-size:12px;cursor:pointer;text-decoration:underline;padding:4px 8px;min-height:32px}.upload-browse:hover{color:var(--primary-light)}.upload-folder-select{background:var(--bg);color:var(--text-muted);border:1px solid var(--border);border-radius:3px;font-family:inherit;font-size:11px;padding:4px 8px;cursor:pointer;margin-left:auto;min-height:32px}.explorer-file-tree{flex:1;overflow-y:auto;padding:8px 0}.explorer-folder{margin-bottom:4px}.folder-header{display:flex;align-items:center;gap:6px;padding:4px 16px;font-size:12px;color:var(--text-muted);font-weight:600}.folder-icon{font-size:14px}.folder-name{color:var(--text)}.folder-count{background:var(--border);color:var(--text-muted);font-size:10px;padding:0 5px;border-radius:8px;font-weight:400}.folder-files{padding-left:12px}.folder-empty{padding:2px 16px;font-size:11px;color:var(--text-muted);font-style:italic}.file-row{display:flex;align-items:center;gap:4px;padding:4px 16px;font-size:12px;min-height:36px}.file-row:hover{background:var(--bg-surface)}.file-row.active{background:#10b9811a}.file-name{background:none;border:none;color:var(--text);font-family:inherit;font-size:12px;cursor:pointer;text-align:left;padding:2px 0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name:hover{color:var(--primary)}.file-size{color:var(--text-muted);font-size:11px;flex-shrink:0;min-width:50px;text-align:right}.file-download,.file-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:13px;padding:4px 6px;min-width:28px;min-height:28px;display:flex;align-items:center;justify-content:center;text-decoration:none;border-radius:3px;opacity:.6;transition:opacity .1s,color .1s}.file-row:hover .file-download,.file-row:hover .file-delete{opacity:1}@media(hover:none){.file-download,.file-delete{opacity:1}}.file-download:hover{color:var(--primary)}.file-delete:hover{color:var(--error)}.explorer-preview{width:380px;border-left:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg-surface);flex-shrink:0}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border);font-size:12px}.preview-path{color:var(--primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-actions{display:flex;gap:8px;align-items:center}.preview-download{color:var(--primary);font-size:11px;text-decoration:none;padding:4px 8px}.preview-download:hover{color:var(--primary-light);text-decoration:underline}.preview-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:4px 8px;min-height:32px;min-width:32px}.preview-close:hover{color:var(--error)}.preview-content{flex:1;overflow:auto;padding:12px;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0}.preview-truncated{padding:6px 12px;font-size:11px;color:var(--warning);border-top:1px solid var(--border)}@media(max-width:768px){.explorer-panel{flex-direction:column;height:90vh}.explorer-sidebar{width:100%;max-height:120px;border-right:none;border-bottom:1px solid var(--border)}.explorer-ws-list{display:flex;overflow-x:auto;padding:4px 8px;gap:4px}.explorer-ws-item{white-space:nowrap;padding:6px 10px;font-size:12px}.explorer-preview{width:100%;max-height:40%;border-left:none;border-top:1px solid var(--border)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{text-shadow:0 0 4px var(--primary)}50%{text-shadow:0 0 16px var(--primary),0 0 30px rgba(16,185,129,.3)}}.intro{animation:fadeSlideIn .4s ease-out}.intro-border{animation:fadeSlideIn .3s ease-out both}.intro-banner{animation:fadeSlideIn .4s ease-out .1s both}.intro-logo{animation:fadeSlideIn .5s ease-out .2s both,glowPulse 3s ease-in-out 1s infinite}.intro-title{animation:fadeSlideIn .4s ease-out .35s both}.intro-subtitle{animation:fadeSlideIn .4s ease-out .4s both}.intro-meta{animation:fadeSlideIn .4s ease-out .5s both}.intro-helper{animation:fadeSlideIn .4s ease-out .6s both}.intro-prompts{animation:fadeSlideIn .4s ease-out .7s both}.intro-prompts{display:flex;flex-direction:column;gap:2px;margin-top:8px}.intro-prompt{color:var(--text);cursor:pointer;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border);border-radius:6px;font-family:inherit;font-size:inherit;text-align:left;display:block;width:100%;line-height:1.5;transition:transform .15s ease,border-color .15s ease,background .15s ease}.intro-prompt:hover,.intro-prompt:focus-visible{color:var(--primary-light);border-color:var(--primary);background:#10b9810d;transform:translate(4px)}.intro-prompt:nth-child(1){animation:fadeSlideIn .3s ease-out .75s both}.intro-prompt:nth-child(2){animation:fadeSlideIn .3s ease-out .85s both}.intro-prompt:nth-child(3){animation:fadeSlideIn .3s ease-out .95s both}.intro-prompt:nth-child(4){animation:fadeSlideIn .3s ease-out 1.05s both}.intro-prompt:nth-child(5){animation:fadeSlideIn .3s ease-out 1.15s both}.intro-prompt:nth-child(6){animation:fadeSlideIn .3s ease-out 1.25s both}.intro-prompt .num{color:var(--primary);margin-right:6px;font-weight:600}.terminal-input-form{border:1px solid var(--border);border-radius:8px;padding:4px 8px;transition:border-color .2s ease,box-shadow .2s ease;background:var(--bg)}.terminal-input-form:focus-within{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),0 0 12px #10b98126}.terminal-input-form .input-prompt{transition:opacity .2s}.terminal-input-form:focus-within .input-prompt{opacity:1}.send-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;padding:4px 8px;min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:color .15s,background .15s;flex-shrink:0}.send-btn:hover,.send-btn:focus-visible{color:var(--primary);background:#10b9811a}.send-btn.has-text{color:var(--primary)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.streaming-cursor{display:inline-block;width:8px;height:14px;background:var(--primary);margin-left:2px;vertical-align:text-bottom;animation:blink .8s step-end infinite}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.message-enter{animation:messageSlideIn .3s ease-out both}.tool-block{margin:4px 0;position:relative}.tool-event{padding:6px 0 6px 16px;display:flex;align-items:flex-start;gap:8px;position:relative}.tool-event:before{content:"";position:absolute;left:4px;top:0;bottom:-4px;width:1px;background:var(--border)}.tool-marker{position:relative;z-index:1;flex-shrink:0;font-size:10px}@keyframes toolPulse{0%,to{opacity:1}50%{opacity:.5}}.tool-marker.running{color:var(--warning);animation:toolPulse 1.5s ease-in-out infinite}.tool-detail-line{padding-left:24px;color:var(--text-muted);font-size:12px;padding-top:1px;padding-bottom:1px;position:relative}.tool-detail-line:before{content:"";position:absolute;left:4px;top:0;bottom:0;width:1px;background:var(--border)}@keyframes dotWave{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.thinking-dots{display:inline-flex;gap:3px;margin-left:4px}.thinking-dots span{width:4px;height:4px;border-radius:50%;background:var(--primary);display:inline-block;animation:dotWave 1.4s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.15s}.thinking-dots span:nth-child(3){animation-delay:.3s}.scroll-fab{position:absolute;bottom:80px;right:24px;width:36px;height:36px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;z-index:10;transition:transform .2s ease,opacity .2s ease,color .15s,border-color .15s;box-shadow:0 2px 8px #0000004d}.scroll-fab:hover{color:var(--primary);border-color:var(--primary);transform:scale(1.1)}.scroll-fab-enter{animation:fadeSlideIn .2s ease-out}@keyframes toastSlideIn{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}.toast-container{position:fixed;top:calc(env(safe-area-inset-top,0px) + 48px);left:50%;transform:translate(-50%);z-index:200;pointer-events:none}.toast{background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:8px 16px;color:var(--text);font-size:12px;font-family:inherit;box-shadow:0 4px 16px #0006;animation:toastSlideIn .3s ease-out;white-space:nowrap;pointer-events:auto}.toast.toast-exit{animation:toastSlideOut .3s ease-in forwards}.toast .toast-icon{color:var(--primary);margin-right:6px}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:768px){.header-menu-dropdown{position:fixed;inset:auto 0 0 0;right:0;top:auto;margin-top:0;border-radius:16px 16px 0 0;min-width:unset;width:100%;max-height:70vh;padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom,0px));animation:sheetSlideUp .25s ease-out;box-shadow:0 -4px 24px #00000080}.header-menu-dropdown:before{content:"";display:block;width:36px;height:4px;background:var(--border);border-radius:2px;margin:4px auto 8px}.header-menu-item{padding:14px 20px;min-height:48px;font-size:14px}.terminal-input-form{border-radius:12px;padding:2px 4px}.intro-prompt{padding:12px 14px;font-size:13px}.scroll-fab{bottom:72px;right:16px}}
