.toast-container{position:fixed;top:calc(env(safe-area-inset-top) + 16px);left:16px;right:16px;display:flex;flex-direction:column;gap:8px;z-index:2000;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 12px #0000004d;animation:slideInDown .3s ease;pointer-events:auto}@keyframes slideInDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.toast.exiting{animation:slideOutUp .3s ease forwards}@keyframes slideOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}.toast-icon{font-size:18px;flex-shrink:0}.toast.success .toast-icon{color:var(--accent-success)}.toast.error .toast-icon{color:var(--accent-danger)}.toast.warning .toast-icon{color:var(--accent-warning)}.toast.info .toast-icon{color:var(--accent-primary)}.toast-content{flex:1;min-width:0}.toast-title{font-weight:500;color:var(--text-primary);margin-bottom:2px;font-size:14px}.toast-message{font-size:13px;color:var(--text-secondary);word-break:break-word}.toast-close{background:none;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;padding:4px;line-height:1;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.toast-close:active{color:var(--text-primary)}.sheet-overlay{position:fixed;inset:0;background:#00000080;z-index:1500}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--bg-secondary);border-radius:16px 16px 0 0;max-height:60%;display:flex;flex-direction:column;z-index:1501;padding-bottom:env(safe-area-inset-bottom);animation:slideUp .25s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-header{padding:12px 16px 8px;text-align:center;border-bottom:1px solid var(--border-color)}.sheet-handle{width:36px;height:4px;background:var(--text-muted);border-radius:2px;margin:0 auto 12px}.sheet-header h2{margin:0;font-size:17px;font-weight:600;color:var(--text-primary)}.sheet-content{flex:1;overflow-y:auto;padding:12px 16px}.sheet-loading,.sheet-empty{text-align:center;padding:24px;color:var(--text-muted)}.intents-list{list-style:none;margin:0;padding:0}.intent-item{padding:12px;background:var(--bg-tertiary);border-radius:8px;margin-bottom:8px;cursor:pointer}.intent-item:last-child{margin-bottom:0}.intent-item:active{opacity:.8}.intent-header{display:flex;justify-content:space-between;align-items:center}.intent-name{font-weight:500;color:var(--text-primary);font-size:15px;flex:1}.intent-item.active{border:1px solid var(--accent-primary, #6366f1);background:var(--bg-secondary)}.intent-desc{font-size:13px;color:var(--text-secondary, var(--text-muted));margin-top:4px;line-height:1.4}.intent-quick-chat-btn{width:32px;height:32px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;background:var(--bg-primary, #fff);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.intent-quick-chat-btn:active{background:var(--bg-hover, #eee)}.intent-chevron{font-size:10px;color:var(--text-muted);margin-left:8px}.intent-descriptions{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:8px}.intent-description{font-size:13px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap;padding-left:8px;border-left:2px solid var(--accent-primary)}.intent-input-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1502;padding:16px}.intent-input-content{background:var(--bg-secondary);border-radius:12px;padding:20px;width:100%;max-width:400px}.intent-input-content h3{margin:0 0 8px;color:var(--text-primary);font-size:16px;font-weight:600}.intent-input-hint{margin:0 0 12px;color:var(--text-secondary);font-size:13px;line-height:1.4}.intent-input-content textarea{width:100%;min-height:150px;padding:12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:15px;resize:none;font-family:inherit}.intent-input-content textarea:focus{outline:none;border-color:var(--accent-primary)}.intent-input-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.intent-btn-cancel,.intent-btn-send{padding:10px 20px;border-radius:8px;font-size:15px;font-weight:500;border:none}.intent-btn-cancel{background:var(--bg-tertiary);color:var(--text-primary)}.intent-btn-send{background:var(--accent-primary);color:#fff}.intent-btn-send:disabled{opacity:.5}.intent-cards-home{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px}.intent-cards-grid,.intent-cards-secondary{display:flex;flex-direction:column;gap:10px;width:100%}.intent-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color, #e0e0e0);border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;font-size:inherit;color:inherit;transition:border-color .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}.intent-card:active{background:var(--bg-hover, #eee)}.intent-card-header{display:flex;align-items:center;justify-content:space-between;width:100%}.intent-card-name{font-weight:600;font-size:15px;color:var(--text-color)}.intent-card-body{display:flex;flex-direction:column;gap:8px;width:100%;flex:1}.intent-card-help{width:26px;height:26px;border-radius:50%;border:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #fff);color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-tap-highlight-color:transparent}.intent-card-desc{font-size:13px;color:var(--text-secondary, var(--text-muted));line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.intent-card-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.intent-card-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e0e0e0);color:var(--text-muted)}.intent-card-badge.badge-output{color:var(--accent-color, #6366f1);border-color:var(--accent-color, #6366f1)}.intent-card.selected{border-color:var(--accent-primary, #6366f1);box-shadow:0 0 0 1px var(--accent-primary, #6366f1)}.intent-card.disabled{opacity:.5;cursor:default}.intent-cards-section-label{width:100%;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.intent-create-prompt{width:100%;display:flex;flex-direction:column;gap:10px;padding:14px 16px;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--accent-primary, #6366f1);border-radius:10px}.intent-create-label{font-size:14px;color:var(--text-color)}.intent-create-form{display:flex;gap:8px}.intent-create-input{flex:1;padding:10px 12px;font-size:14px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:var(--bg-primary, #fff);color:var(--text-color);font-family:inherit}.intent-create-input:focus{outline:none;border-color:var(--accent-primary, #6366f1)}.intent-create-btn{padding:10px 20px;background:var(--accent-primary, #6366f1);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.intent-detail{width:100%;border-top:1px solid var(--border-color, #e0e0e0);padding-top:10px;margin-top:4px;display:flex;flex-direction:column;gap:8px;cursor:default}.intent-detail-section{display:flex;flex-direction:column;gap:2px}.intent-detail-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.intent-detail-value{font-size:12px;color:var(--text-color)}.intent-detail-sub{font-size:11px;color:var(--text-muted)}.intent-detail-list{margin:0;padding-left:16px;font-size:11px;color:var(--text-secondary, var(--text-muted));line-height:1.5}.intent-detail-list li{margin-bottom:2px}.intent-detail-tools{display:flex;flex-wrap:wrap;gap:4px}.intent-detail-tool{font-size:10px;padding:1px 5px;border-radius:3px;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e0e0e0);color:var(--text-muted);font-family:monospace}.intent-detail-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--accent-primary, #6366f1);color:#fff}.ephemeral-overlay{position:fixed;inset:0;z-index:1000;background:var(--bg-primary, #fff);display:flex;flex-direction:column}.ephemeral-modal{flex:1;display:flex;flex-direction:column;height:100%}.ephemeral-header{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #fff);padding-top:calc(12px + env(safe-area-inset-top,0px))}.ephemeral-title{flex:1;display:flex;align-items:center;gap:8px}.ephemeral-intent{font-weight:600;font-size:15px;color:var(--accent-primary, #6366f1)}.ephemeral-messages{flex:1;overflow-y:auto;min-height:0}.ephemeral-loading,.ephemeral-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:14px}.ephemeral-input{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-top:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #fff);padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.ephemeral-input input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:var(--bg-secondary, #f5f5f5);color:var(--text-color);font-size:14px;font-family:inherit}.ephemeral-input input:focus{outline:none;border-color:var(--accent-primary, #6366f1)}.ephemeral-input input:disabled{opacity:.5}.ephemeral-actions{display:flex;gap:8px;justify-content:flex-end}.ephemeral-btn{padding:8px 16px;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.ephemeral-btn.primary{background:var(--accent-primary, #6366f1);color:#fff}.ephemeral-btn.primary:disabled{opacity:.5}.ephemeral-btn.secondary{background:var(--bg-secondary, #f5f5f5);color:var(--text-color);border:1px solid var(--border-color, #e0e0e0)}.settings-page{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg-primary);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:2000}.settings-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:56px}.settings-header h1{flex:1;margin:0;font-size:17px;font-weight:600;text-align:center}.header-spacer{width:44px}.settings-content{flex:1;overflow-y:auto;padding:16px}.settings-section{background:var(--bg-secondary);border-radius:10px;overflow:hidden;margin-bottom:24px}.settings-section-title{padding:12px 16px 8px;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--border-color)}.settings-label{color:var(--text-primary);font-size:15px}.settings-value{color:var(--text-secondary);font-size:15px}.theme-selector{display:flex;gap:12px;padding:12px 16px}.theme-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:var(--bg-tertiary);border:2px solid transparent;border-radius:12px;color:var(--text-secondary);font-size:13px}.theme-option.active{border-color:var(--accent-primary);color:var(--accent-primary)}.theme-preview{width:48px;height:48px;border-radius:8px;border:1px solid var(--border-color)}.theme-preview-tango{background:linear-gradient(135deg,#2e3436 0% 50%,#729fcf 50% 100%)}.theme-preview-dark{background:linear-gradient(135deg,#0d1117 0% 50%,#58a6ff 50% 100%)}.theme-preview-light{background:linear-gradient(135deg,#fff 0% 50%,#0969da 50% 100%)}.theme-preview-blue{background:linear-gradient(135deg,#15202b 0% 50%,#1d9bf0 50% 100%)}.settings-update-btn{width:calc(100% - 32px);margin:12px 16px 8px;padding:12px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500}.settings-update-btn:active{opacity:.8}.settings-disconnect-btn{width:calc(100% - 32px);margin:8px 16px 12px;padding:12px;background:var(--accent-danger);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500}.settings-disconnect-btn:active{opacity:.8}.font-selector{padding:12px 16px}.font-select{width:100%;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:15px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.font-preview{margin:0 16px 16px;padding:16px;background:var(--bg-tertiary);border-radius:8px;color:var(--text-primary);font-size:14px;line-height:1.5}.font-preview p{margin:0}.scheduler-page{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--bg-primary);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);z-index:2000}.scheduler-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:56px}.scheduler-header h1{flex:1;margin:0;font-size:17px;font-weight:600;text-align:center}.scheduler-header-action{min-width:44px;height:44px;background:none;border:none;color:var(--accent-primary);font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;border-radius:8px;padding:0 8px}.scheduler-header-action:active{background:var(--bg-tertiary)}.scheduler-content{flex:1;overflow-y:auto;padding:16px}.scheduler-empty{text-align:center;color:var(--text-muted);padding:48px 24px;font-size:15px}.scheduler-loading{text-align:center;color:var(--text-muted);padding:48px 24px}.scheduler-list{display:flex;flex-direction:column;gap:4px}.scheduler-list-item{display:flex;align-items:center;padding:12px;min-height:52px;border-radius:8px;background:var(--bg-secondary);cursor:pointer}.scheduler-list-item:active{background:var(--bg-tertiary)}.scheduler-item-info{flex:1;min-width:0}.scheduler-item-name{font-size:15px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scheduler-item-meta{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:13px;color:var(--text-muted)}.scheduler-status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.scheduler-status-dot.active{background:var(--accent-success)}.scheduler-status-dot.paused{background:var(--accent-warning)}.scheduler-item-actions{display:flex;gap:4px;flex-shrink:0}.scheduler-item-btn{width:36px;height:36px;background:none;border:none;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:6px}.scheduler-item-btn:active{background:var(--bg-tertiary);color:var(--text-primary)}.scheduler-item-btn.danger:active{color:var(--accent-danger)}.scheduler-form-group{margin-bottom:16px}.scheduler-form-label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.scheduler-form-input,.scheduler-form-select{width:100%;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:15px;appearance:none}.scheduler-form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.scheduler-form-textarea{width:100%;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:15px;font-family:inherit;resize:vertical;min-height:80px}.scheduler-form-help{font-size:12px;color:var(--text-muted);margin-top:4px}.scheduler-time-picker{display:flex;align-items:center;gap:8px}.scheduler-time-picker .scheduler-form-select{width:auto;flex:1}.scheduler-time-separator{color:var(--text-secondary);font-size:18px;font-weight:600}.scheduler-day-selector{display:flex;gap:6px;flex-wrap:wrap}.scheduler-day-btn{min-width:40px;height:36px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:13px;font-weight:500;display:flex;align-items:center;justify-content:center}.scheduler-day-btn.selected{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.scheduler-day-btn:active{opacity:.8}.scheduler-section{background:var(--bg-secondary);border-radius:10px;overflow:hidden;margin-bottom:16px}.scheduler-section-header{display:flex;align-items:center;padding:14px 16px;cursor:pointer;font-size:15px;font-weight:600;color:var(--text-primary)}.scheduler-section-header:active{background:var(--bg-tertiary)}.scheduler-section-header span{flex:1}.scheduler-section-chevron{width:16px;height:16px;transition:transform .2s;color:var(--text-muted)}.scheduler-section.open .scheduler-section-chevron{transform:rotate(180deg)}.scheduler-section-content{padding:0 16px 16px}.scheduler-form-actions{display:flex;flex-direction:column;gap:8px;margin-top:24px}.scheduler-btn{width:100%;padding:14px;border:none;border-radius:8px;font-size:15px;font-weight:500;min-height:48px}.scheduler-btn:active{opacity:.8}.scheduler-btn:disabled{opacity:.5}.scheduler-btn-primary{background:var(--accent-primary);color:#fff}.scheduler-btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.scheduler-btn-danger{background:var(--accent-danger);color:#fff}.scheduler-info{margin-top:16px;padding:12px 16px;background:var(--bg-secondary);border-radius:10px;font-size:13px;color:var(--text-muted);display:flex;flex-direction:column;gap:4px}.scheduler-inline-group{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:15px}.scheduler-inline-group .scheduler-form-select{width:80px;flex:none}.scheduler-form-readonly{padding:10px 12px;background:var(--bg-tertiary);border-radius:8px;font-size:14px;color:var(--text-secondary)}.scheduler-info-box{padding:12px;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);color:var(--text-secondary);font-size:14px}.chat-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:44px}.chat-header.two-rows{display:grid;grid-template-columns:auto auto 1fr auto auto auto;grid-template-rows:auto auto;align-items:center;padding:6px 12px;gap:0 0}.chat-header.two-rows .menu-btn{grid-column:1;grid-row:1 / 3}.chat-header.two-rows .header-btn-intents{grid-column:2;grid-row:1 / 3}.chat-header.two-rows .chat-header-center{grid-column:3;grid-row:1}.chat-header.two-rows .header-provider-row{grid-column:3;grid-row:2}.chat-header.two-rows .header-btn-scheduler{grid-column:4;grid-row:1 / 3}.chat-header.two-rows .header-btn-tools{grid-column:5;grid-row:1 / 3}.chat-header.two-rows .header-btn-settings{grid-column:6;grid-row:1 / 3}.header-provider-row{display:flex;gap:6px;justify-content:center;padding:2px 0}.header-btn{width:44px;height:44px;background:none;border:none;color:var(--text-secondary);font-size:20px;display:flex;align-items:center;justify-content:center;border-radius:8px}.header-btn:active{background:var(--bg-tertiary)}.chat-header-center{flex:1;min-width:0;text-align:center;padding:0 8px}.header-capsule{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-session{font-weight:600;font-size:15px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-assistant{font-size:12px;color:var(--text-muted)}.header-assistant-select{font-size:12px;color:var(--text-muted);background:none;border:none;padding:4px 0;text-align:center}.header-provider-select{font-size:11px;color:var(--text-muted);background:none;border:1px solid var(--border-color);border-radius:4px;padding:2px 4px;max-width:100px}.message-area{flex:1;overflow-y:auto;overflow-x:hidden;padding:12px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch;font-family:var(--chat-font, inherit)}.loading-history{text-align:center;padding:12px;color:var(--text-muted);font-size:13px}.message{display:flex;flex-direction:column;gap:4px}.message-header{display:flex;align-items:baseline;gap:8px}.message-role{font-weight:600;font-size:13px}.message-user .message-role{color:var(--accent-success)}.message-assistant .message-role{color:var(--accent-primary)}.message-time,.msg-time{font-size:10px;color:var(--text-muted)}.message-toolcalls-btn{background:none;border:1px solid var(--border-color);border-radius:4px;font-size:10px;color:var(--text-muted);padding:1px 6px;min-height:20px;margin-left:auto}.message-toolcalls-btn:active{background:var(--bg-tertiary);color:var(--text-primary)}.message-toolcalls-btn:disabled{opacity:.4}.message-delete-btn{background:none;border:none;font-size:12px;color:var(--text-muted);padding:0 4px;opacity:.5}.message-delete-btn:active{opacity:1;color:var(--accent-danger)}.message-delete-btn:disabled{opacity:.2}.message-content{color:var(--text-primary);line-height:1.7;font-size:14px;word-break:break-word}.message-content br{display:block;content:"";margin:8px 0}.message-content pre{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:10px;overflow-x:auto;margin:8px 0;font-size:13px}.message-content code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:13px}.message-content pre code{background:none;padding:0}.message-content p{margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin:12px 0;padding-left:20px}.message-content li{margin:6px 0}.message.streaming .message-role:after{content:"";display:inline-block;width:8px;height:8px;background:var(--accent-success);border-radius:50%;margin-left:8px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.streaming-indicator{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:13px;padding:8px 0}.thinking-dots{display:flex;gap:4px}.thinking-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-primary);animation:thinking 1.4s infinite ease-in-out both}.thinking-dot:nth-child(1){animation-delay:-.32s}.thinking-dot:nth-child(2){animation-delay:-.16s}.thinking-dot:nth-child(3){animation-delay:0}@keyframes thinking{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.tool-executions{display:flex;flex-direction:column;gap:4px;padding:8px 0}.tool-execution{display:flex;align-items:center;gap:8px;font-size:13px;padding:6px 10px;background:var(--bg-tertiary);border-radius:6px}.tool-execution .tool-status-icon{font-size:14px}.tool-execution.running .tool-status-icon{color:var(--accent-warning)}.tool-execution.success .tool-status-icon{color:var(--accent-success)}.tool-execution.error .tool-status-icon{color:var(--accent-danger)}.tool-execution .tool-name{color:var(--text-primary);font-weight:500}.completed-phases{display:flex;flex-direction:column;gap:4px;margin:8px 0}.phase-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-tertiary);border-radius:6px;font-size:13px}.phase-name{font-weight:500;color:var(--text-primary)}.phase-duration{color:var(--text-muted);font-size:11px}.system-message{padding:10px 12px;border-radius:8px;font-size:13px}.system-message pre{margin:0;white-space:pre-wrap;font-family:inherit}.system-message.info{background:#58a6ff1a;color:var(--accent-primary)}.system-message.error{background:#f851491a;color:var(--accent-danger)}.input-box{padding:8px 12px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.input-wrapper{display:flex;align-items:center;gap:8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:24px;padding:4px 4px 4px 16px}.input-waiting{display:flex;align-items:center;gap:4px;padding-right:4px}.waiting-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-primary);animation:waiting-bounce 1.4s infinite ease-in-out both}.waiting-dot:nth-child(1){animation-delay:-.32s}.waiting-dot:nth-child(2){animation-delay:-.16s}.waiting-dot:nth-child(3){animation-delay:0s}@keyframes waiting-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.input-wrapper.disabled{opacity:.6}.chat-input{flex:1;background:none;border:none;color:var(--text-primary);font-size:15px;padding:8px 0;outline:none;min-width:0}.chat-input::placeholder{color:var(--text-muted)}.send-btn{padding:8px 16px;background:var(--accent-primary);color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:500;min-height:36px}.send-btn:disabled{opacity:.5}.send-btn.cancel{background:var(--accent-danger)}.status-bar{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background:var(--bg-primary);font-size:11px;border-top:1px solid var(--border-color)}.status-bar-capsule{color:var(--text-muted);font-weight:500}.status-bar-section{display:flex;align-items:center;gap:4px}.status-bar-label{color:var(--text-muted)}.status-bar-value{color:var(--accent-primary)}.status-bar-separator{color:var(--text-muted);margin:0 2px}.chat-message.delegation-msg{background:var(--bg-secondary);border-radius:8px;padding:10px 12px;margin:8px 0;max-width:85%;min-width:25%;width:fit-content;box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014}.chat-message.delegation-msg.delegation-response{margin-left:auto}.chat-message.delegation-msg.failed{box-shadow:0 1px 3px #00000026,0 1px 2px #0000001a;border-left:3px solid var(--accent-danger)}.msg-sender{font-weight:600;font-size:13px;color:var(--accent-primary);margin-bottom:4px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.msg-sender .message-time{font-weight:400;font-size:10px;color:var(--text-muted);margin-left:auto}.msg-action{font-weight:400;color:var(--text-muted)}.msg-content{color:var(--text-primary);line-height:1.7;font-size:14px}.msg-content br{display:block;content:"";margin:8px 0}.msg-content p{margin:0 0 12px}.msg-content p:last-child{margin-bottom:0}.msg-content pre{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:10px;overflow-x:auto;margin:8px 0;font-size:12px}.msg-content code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px}.msg-content pre code{background:none;padding:0}.msg-content ul,.msg-content ol{margin:8px 0;padding-left:20px}.msg-content-json{font-size:11px;font-family:SF Mono,Monaco,Consolas,monospace;background:var(--bg-tertiary);padding:8px;border-radius:6px;overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word;color:var(--text-secondary)}.msg-reply-to{background:var(--bg-tertiary);border-left:2px solid var(--accent-primary);padding:4px 8px;margin-bottom:8px;font-size:12px;border-radius:0 4px 4px 0;display:flex;gap:4px}.reply-sender{font-weight:600;color:var(--text-primary)}.reply-preview{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-message.bulletin-msg{background:var(--bg-secondary);border-radius:8px;padding:10px 12px;margin:8px 0;max-width:85%;min-width:25%;width:fit-content;box-shadow:0 1px 3px #0000001f,0 1px 2px #00000014}.chat-message.bulletin-msg.assistant-reply{margin-left:auto}.post-status{font-size:9px;padding:1px 4px;border-radius:2px;margin-left:6px;text-transform:lowercase;font-weight:400}.post-status.pending{background:var(--accent-warning);color:#000}.components-area,.message-components{display:flex;flex-direction:column;gap:12px;padding:8px 0}.component-render{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:12px;overflow-x:auto}.component-interactive_dashboard{background:none;border:none;padding:0}.component-fallback{color:var(--text-muted);font-style:italic;padding:8px}.chart-wrapper{padding:12px;background:var(--bg-tertiary);border-radius:8px}.chart-title{font-weight:500;font-size:14px;margin-bottom:12px;color:var(--text-primary)}.diagram-fallback{padding:12px;background:var(--bg-tertiary);border-radius:6px}.diagram-fallback-title{font-weight:500;margin-bottom:8px}.diagram-fallback-note{font-size:12px;color:var(--text-muted);margin-bottom:8px}.diagram-fallback-code{font-size:11px;background:var(--bg-primary);padding:8px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.component-table{overflow-x:auto}.capsule-table{width:100%;border-collapse:collapse;font-size:13px}.capsule-table caption{text-align:left;font-weight:500;margin-bottom:8px}.capsule-table th,.capsule-table td{padding:8px 10px;border-bottom:1px solid var(--border-color);text-align:left}.capsule-table th{background:var(--bg-tertiary);font-weight:600}.capsule-table th.sortable{cursor:pointer}.capsule-table th.sort-asc:after{content:" ▲";font-size:10px}.capsule-table th.sort-desc:after{content:" ▼";font-size:10px}.capsule-table .null-value{color:var(--text-muted)}.capsule-table .positive{color:var(--accent-success)}.capsule-table .negative{color:var(--accent-danger)}.capsule-table .table-truncated{text-align:center;color:var(--text-muted);font-style:italic}.component-progress .progress-title{font-weight:500;margin-bottom:12px}.component-progress .progress-item{margin-bottom:12px}.component-progress .progress-label{display:flex;justify-content:space-between;margin-bottom:4px;font-size:13px}.component-progress .progress-bar{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.component-progress .progress-fill{height:100%;background:var(--accent-primary);transition:width .3s ease}.component-tree .tree-title{font-weight:500;margin-bottom:8px}.component-tree ul{list-style:none;padding-left:16px;margin:0}.component-tree .tree-root{padding-left:0}.component-tree li{padding:4px 0}.component-tree .tree-label{display:flex;align-items:center;gap:6px}.component-tree .tree-icon{font-size:14px}.component-tree .tree-text{font-size:13px}.component-timeline .timeline-title{font-weight:500;margin-bottom:12px}.component-timeline .timeline-event{position:relative;padding:8px 0 8px 20px;border-left:2px solid var(--border-color);margin-left:8px}.component-timeline .timeline-dot{position:absolute;left:-5px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--border-color)}.component-timeline .timeline-dot.complete{background:var(--accent-success)}.component-timeline .timeline-dot.current{background:var(--accent-primary)}.component-timeline .timeline-date{font-size:11px;color:var(--text-muted)}.component-timeline .timeline-label{font-weight:500;font-size:13px}.component-timeline .timeline-desc{font-size:12px;color:var(--text-secondary);margin-top:2px}.capsule-choice{padding:8px 0}.choice-buttons{display:flex;flex-wrap:wrap;gap:8px}.choice-btn{padding:10px 16px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .15s;min-height:44px}.choice-btn:hover:not(:disabled){background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.choice-btn:disabled{opacity:.5;cursor:not-allowed}.choice-btn.choice-other{border-style:dashed;color:var(--text-muted)}.choice-btn.choice-yes{border-color:var(--accent-success);color:var(--accent-success)}.choice-btn.choice-yes:hover:not(:disabled){background:var(--accent-success);color:#fff}.choice-btn.choice-no{border-color:var(--accent-danger);color:var(--accent-danger)}.choice-btn.choice-no:hover:not(:disabled){background:var(--accent-danger);color:#fff}.choice-confirm{display:flex;gap:8px}.choice-checkboxes{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.choice-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;border-radius:6px;min-height:44px}.choice-checkbox-label:active{background:var(--bg-tertiary)}.choice-checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--accent-primary)}.choice-submit{padding:10px 20px;border:none;border-radius:6px;background:var(--accent-primary);color:#fff;font-size:14px;font-weight:500;cursor:pointer;min-height:44px}.choice-submit:disabled{opacity:.5;cursor:not-allowed}.choice-text-input{display:flex;gap:8px}.choice-input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;min-height:44px}.choice-input:focus{outline:none;border-color:var(--accent-primary)}.choice-submitted{opacity:.7}.capsule-questions{padding:8px 0}.questions-intro{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.questions-progress{font-size:12px;color:var(--text-muted);margin-bottom:8px}.questions-container{margin-bottom:12px}.question-text{font-weight:500;margin-bottom:12px;color:var(--text-primary);font-size:14px}.question-text-input{display:flex;gap:8px;margin-top:8px}.question-input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;min-height:44px}.question-input:focus{outline:none;border-color:var(--accent-primary)}.questions-complete{color:var(--accent-success);font-weight:500}.questions-submit{padding:12px 24px;border:none;border-radius:6px;background:var(--accent-success);color:#fff;font-size:14px;font-weight:500;cursor:pointer;min-height:44px}.questions-submit:disabled{opacity:.5;cursor:not-allowed}.questions-submitted{opacity:.7}.design-wrapper{padding:8px 0}.design-title{font-weight:500;font-size:14px;margin-bottom:8px;color:var(--text-primary)}.design-canvas-container{border-radius:8px;overflow:hidden;background:var(--bg-tertiary)}.design-canvas-container svg{display:block;width:100%;height:auto;max-height:70vh}.design-info{display:flex;justify-content:flex-end;margin-top:6px;font-size:11px;color:var(--text-muted)}.design-dimensions{font-family:SF Mono,Monaco,Consolas,monospace}.design-error{padding:20px;text-align:center;color:var(--text-muted);font-style:italic;font-size:13px}.carousel-wrapper{padding:8px 0}.carousel-title{font-weight:500;font-size:14px;margin-bottom:10px;color:var(--text-primary)}.carousel-container{display:flex;align-items:center;gap:6px}.carousel-nav{flex-shrink:0;width:36px;height:36px;border:none;border-radius:50%;background:var(--bg-tertiary);color:var(--text-primary);display:flex;align-items:center;justify-content:center}.carousel-nav:active{background:var(--bg-secondary);transform:scale(.95)}.carousel-slide-wrapper{flex:1;min-width:0;border-radius:8px;overflow:hidden;background:var(--bg-tertiary)}.carousel-slide{width:100%}.carousel-slide svg{display:block;width:100%;height:auto;max-height:60vh}.carousel-indicators{display:flex;justify-content:center;gap:6px;margin-top:10px}.carousel-dot{width:8px;height:8px;border-radius:50%;border:none;background:var(--border-color);padding:0}.carousel-dot.active{background:var(--accent-primary);transform:scale(1.2)}.carousel-info{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:var(--text-muted)}.carousel-counter{font-weight:500}.carousel-dimensions{font-family:SF Mono,Monaco,Consolas,monospace}.carousel-error{padding:20px;text-align:center;color:var(--text-muted);font-style:italic;font-size:13px}.canvas-wrapper{padding:8px 0}.canvas-title{font-weight:500;font-size:14px;margin-bottom:10px;color:var(--text-primary)}.canvas-grid{gap:10px}.canvas-section{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:8px;padding:10px;min-height:60px}.canvas-section-label{font-weight:600;font-size:12px;color:var(--text-primary);margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.canvas-section-items{list-style:none;margin:0;padding:0;font-size:13px}.canvas-section-items li{padding:3px 0;color:var(--text-secondary)}.canvas-section-items li:before{content:"•";color:var(--text-muted);margin-right:6px}.rich-app-wrapper{background:var(--ra-bg);border-radius:10px;overflow:hidden;margin:10px 0;border:1px solid var(--ra-border)}.rich-app-header{padding:16px;border-bottom:1px solid var(--ra-border);background:var(--ra-surface)}.rich-app-title{margin:0;font-size:17px;font-weight:700;color:var(--ra-text)}.rich-app-description{margin:4px 0 0;font-size:12px;color:var(--ra-text-secondary)}.rich-app-nav{display:flex;gap:2px;padding:0 12px;background:var(--ra-surface);border-bottom:1px solid var(--ra-border);overflow-x:auto;-webkit-overflow-scrolling:touch}.rich-app-nav-item{display:flex;align-items:center;gap:4px;padding:10px 12px;background:none;border:none;color:var(--ra-text-secondary);font-size:12px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;flex-shrink:0}.rich-app-nav-item.active{color:var(--ra-accent);border-bottom-color:var(--ra-accent)}.rich-app-nav-icon{font-size:13px}.rich-app-main{max-height:500px;overflow-y:auto;-webkit-overflow-scrolling:touch}.rich-app-error{padding:16px;color:#ef4444;text-align:center}.rich-app-layout{display:flex;flex-direction:column;gap:12px}.rich-app-layout-grid{display:grid;grid-template-columns:1fr;gap:12px}.rich-app-layout-columns{display:flex;flex-direction:column;gap:12px}.rich-app-component-error{padding:10px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:11px}.ra-section-title{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--ra-text)}.ra-empty{padding:16px;text-align:center;color:var(--ra-text-secondary);font-size:12px}.ra-alert-list{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-alert-items{display:flex;flex-direction:column;gap:8px}.ra-alert-item{display:flex;gap:10px;padding:10px;background:var(--ra-bg);border-radius:6px;cursor:pointer}.ra-alert-indicator{width:3px;border-radius:2px;flex-shrink:0}.ra-alert-content{flex:1;min-width:0}.ra-alert-header{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ra-alert-title{font-weight:500;color:var(--ra-text);font-size:12px}.ra-alert-badge{padding:2px 6px;border-radius:8px;font-size:9px;font-weight:600;text-transform:uppercase;color:#fff}.ra-alert-meta{font-size:11px;color:var(--ra-text-secondary);margin-top:4px;display:block}.ra-alert-time{font-size:10px;color:var(--ra-text-secondary)}.ra-alert-details{margin-top:8px;padding-top:8px;border-top:1px solid var(--ra-border);font-size:11px;color:var(--ra-text-secondary)}.ra-entity-cards{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-cards-grid{display:grid;grid-template-columns:repeat(var(--ra-columns, 2),1fr);gap:10px}.ra-card{background:var(--ra-bg);border-radius:8px;overflow:hidden}.ra-card-accent{height:3px}.ra-card-content{padding:10px}.ra-card-title{margin:0;font-size:13px;font-weight:600;color:var(--ra-text)}.ra-card-subtitle{margin:2px 0 0;font-size:11px;color:var(--ra-text-secondary)}.ra-card-metrics{display:flex;gap:12px;margin-top:8px;padding-top:8px;border-top:1px solid var(--ra-border)}.ra-card-metric{display:flex;flex-direction:column}.ra-metric-value{font-size:14px;font-weight:700;color:var(--ra-text)}.ra-metric-label{font-size:9px;color:var(--ra-text-secondary);text-transform:uppercase}.ra-card-status{display:inline-block;margin-top:6px;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:600;text-transform:uppercase}.ra-status-active{background:#22c55e33;color:#22c55e}.ra-status-inactive{background:#6b728033;color:#6b7280}.ra-status-pending{background:#eab30833;color:#eab308}.ra-chart{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-chart-simple{display:flex;gap:8px}.ra-chart-bars{align-items:flex-end}.ra-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.ra-bar-container{width:100%;height:100%;display:flex;align-items:flex-end}.ra-bar{width:100%;border-radius:3px 3px 0 0;transition:height .3s}.ra-bar-label{font-size:9px;color:var(--ra-text-secondary);text-align:center}.ra-bar-value{font-size:10px;font-weight:600;color:var(--ra-text)}.ra-chart-pie{flex-direction:column;gap:6px}.ra-pie-item{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid var(--ra-border)}.ra-pie-item:last-child{border-bottom:none}.ra-pie-label{font-size:12px;color:var(--ra-text)}.ra-pie-value{font-size:12px;font-weight:600;color:var(--ra-accent)}.ra-table{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.ra-table table{width:100%;border-collapse:collapse;font-size:11px}.ra-table th{text-align:left;padding:8px;border-bottom:1px solid var(--ra-border);color:var(--ra-text-secondary);font-weight:600;font-size:10px;text-transform:uppercase;white-space:nowrap}.ra-table th.sortable{cursor:pointer}.ra-sort-indicator{font-size:9px}.ra-table td{padding:8px;border-bottom:1px solid var(--ra-border);color:var(--ra-text)}.ra-table tr.clickable{cursor:pointer}.ra-pagination{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px;font-size:11px;color:var(--ra-text-secondary)}.ra-pagination button{padding:4px 8px;background:var(--ra-bg);border:1px solid var(--ra-border);border-radius:4px;color:var(--ra-text);cursor:pointer}.ra-pagination button:disabled{opacity:.4}.ra-timeline{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-timeline-items{position:relative;padding-left:20px}.ra-timeline-items:before{content:"";position:absolute;left:5px;top:5px;bottom:5px;width:2px;background:var(--ra-border)}.ra-timeline-item{position:relative;padding-bottom:12px}.ra-timeline-item:last-child{padding-bottom:0}.ra-timeline-marker{position:absolute;left:-20px;top:4px;width:12px;height:12px;border-radius:50%;border:2px solid var(--ra-surface)}.ra-timeline-content{background:var(--ra-bg);border-radius:6px;padding:10px}.ra-timeline-header{display:flex;justify-content:space-between;align-items:flex-start;gap:6px}.ra-timeline-title{font-weight:500;color:var(--ra-text);font-size:12px}.ra-timeline-time{font-size:10px;color:var(--ra-text-secondary);white-space:nowrap}.ra-timeline-description{margin:4px 0 0;font-size:11px;color:var(--ra-text-secondary)}.ra-timeline-tag{display:inline-block;margin-top:6px;padding:2px 6px;border:1px solid;border-radius:4px;font-size:9px;color:var(--ra-text-secondary)}.ra-board{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-board-columns{display:flex;gap:10px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px}.ra-board-column{flex:0 0 160px;background:var(--ra-bg);border-radius:8px;display:flex;flex-direction:column}.ra-board-column-header{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid var(--ra-border)}.ra-board-column-title{font-weight:600;font-size:11px;color:var(--ra-text);text-transform:uppercase}.ra-board-column-count{font-size:10px;color:var(--ra-text-secondary);background:var(--ra-surface);padding:2px 5px;border-radius:8px}.ra-board-column-items{padding:8px;display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.ra-board-card{background:var(--ra-surface);border-radius:6px;overflow:hidden}.ra-board-card-accent{height:2px}.ra-board-card-content{padding:8px}.ra-board-card-title{font-weight:500;font-size:11px;color:var(--ra-text);display:block}.ra-board-card-client{font-size:10px;color:var(--ra-text-secondary);display:block;margin-top:2px}.ra-board-card-due{font-size:9px;color:var(--ra-text-secondary);display:block;margin-top:2px}.ra-stats{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-stats-row{display:flex;gap:16px;flex-wrap:wrap}.ra-stat-item{display:flex;flex-direction:column;min-width:70px}.ra-stat-value{font-size:22px;font-weight:700;color:var(--ra-text);line-height:1}.ra-stat-label{font-size:10px;color:var(--ra-text-secondary);text-transform:uppercase;margin-top:2px}.ra-stat-change{font-size:10px;font-weight:600;margin-top:2px}.ra-stat-change.positive{color:#22c55e}.ra-stat-change.negative{color:#ef4444}.ra-metric{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-metric-card{display:flex;align-items:center;gap:10px}.ra-metric-icon{font-size:24px}.ra-metric-content{display:flex;flex-direction:column}.ra-metric-card .ra-metric-value{font-size:24px;font-weight:700;color:var(--ra-text);line-height:1}.ra-metric-unit{font-size:14px;font-weight:400;color:var(--ra-text-secondary);margin-left:2px}.ra-metric-card .ra-metric-label{font-size:11px;color:var(--ra-text-secondary);margin-top:2px}.ra-metric-change{font-size:11px;font-weight:600;margin-top:2px}.ra-metric-change.positive{color:#22c55e}.ra-metric-change.negative{color:#ef4444}.rich-app-detail-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:flex-end;justify-content:center;z-index:1000}.rich-app-detail-panel{background:var(--ra-surface);border-radius:16px 16px 0 0;width:100%;max-height:70vh;overflow:auto;position:relative}.rich-app-detail-close{position:absolute;top:12px;right:12px;width:28px;height:28px;background:var(--ra-bg);border:none;border-radius:50%;color:var(--ra-text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.rich-app-detail-title{margin:0;padding:16px;font-size:16px;font-weight:600;color:var(--ra-text);border-bottom:1px solid var(--ra-border)}.rich-app-detail-content{padding:16px}.rich-app-detail-row{display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid var(--ra-border)}.rich-app-detail-row:last-child{border-bottom:none}.rich-app-detail-label{font-weight:500;color:var(--ra-text-secondary);font-size:10px;text-transform:uppercase;margin-bottom:2px}.rich-app-detail-value{color:var(--ra-text);font-size:13px;word-break:break-word;white-space:pre-wrap}.ra-carousel{background:var(--ra-surface);border-radius:8px;padding:12px}.ra-carousel-container{position:relative;display:flex;align-items:center;gap:6px}.ra-carousel-nav{flex-shrink:0;width:32px;height:32px;background:var(--ra-bg);border:1px solid var(--ra-border);border-radius:50%;color:var(--ra-text);cursor:pointer;display:flex;align-items:center;justify-content:center}.ra-carousel-slide-wrapper{flex:1;overflow:hidden;border-radius:6px;background:var(--ra-bg)}.ra-carousel-slide{width:100%;display:flex;align-items:center;justify-content:center}.ra-carousel-slide svg{max-width:100%;height:auto}.ra-carousel-indicators{display:flex;justify-content:center;gap:6px;margin-top:10px}.ra-carousel-dot{width:8px;height:8px;border-radius:50%;background:var(--ra-border);border:none;cursor:pointer}.ra-carousel-dot.active{background:var(--ra-accent)}.ra-carousel-info{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:8px;font-size:10px;color:var(--ra-text-secondary)}.ra-carousel-counter{font-weight:600}.ra-code{background:var(--ra-surface);border-radius:8px;overflow:hidden}.ra-code-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--ra-border);background:var(--ra-bg)}.ra-code-header .ra-section-title{margin:0;flex:1;font-size:12px}.ra-code-filename{font-size:11px;color:var(--ra-text-secondary);font-family:monospace}.ra-code-language{font-size:9px;padding:2px 6px;background:var(--ra-accent);color:#fff;border-radius:4px;text-transform:uppercase;font-weight:600}.ra-code-container{display:flex;overflow:auto;-webkit-overflow-scrolling:touch}.ra-code-lines{flex-shrink:0;padding:10px 0;background:var(--ra-bg);border-right:1px solid var(--ra-border);text-align:right;-webkit-user-select:none;user-select:none}.ra-code-line-number{display:block;padding:0 8px;font-size:11px;font-family:monospace;color:var(--ra-text-secondary);line-height:1.5}.ra-code-pre{flex:1;margin:0;padding:10px 12px;overflow-x:auto;font-size:11px;line-height:1.5;font-family:JetBrains Mono,Fira Code,monospace}.ra-code-pre.wrap{white-space:pre-wrap;word-break:break-word}.ra-code-pre code{font-family:inherit}.ra-code-dark .ra-code-pre{background:#1a1a1a;color:#e6e6e6}.ra-code-dark .hljs-keyword{color:#c678dd}.ra-code-dark .hljs-string{color:#98c379}.ra-code-dark .hljs-number{color:#d19a66}.ra-code-dark .hljs-comment{color:#5c6370;font-style:italic}.ra-code-dark .hljs-function{color:#61afef}.ra-code-dark .hljs-class{color:#e5c07b}.ra-code-dark .hljs-variable{color:#e06c75}.ra-code-dark .hljs-built_in{color:#56b6c2}.ra-code-dark .hljs-attr{color:#d19a66}.ra-code-dark .hljs-title{color:#61afef}.ra-code-dark .hljs-params{color:#e6e6e6}.ra-code-dark .hljs-literal{color:#56b6c2}.ra-code-light .ra-code-pre{background:#fafafa;color:#383a42}.ra-code-light .hljs-keyword{color:#a626a4}.ra-code-light .hljs-string{color:#50a14f}.ra-code-light .hljs-number{color:#986801}.ra-code-light .hljs-comment{color:#a0a1a7;font-style:italic}.ra-code-light .hljs-function{color:#4078f2}.ra-code-light .hljs-class{color:#c18401}.ra-code-light .hljs-variable{color:#e45649}.ra-code-light .hljs-built_in{color:#0184bc}.ra-code-light .hljs-attr{color:#986801}.ra-code-light .hljs-title{color:#4078f2}.ra-code-light .hljs-params{color:#383a42}.ra-code-light .hljs-literal{color:#0184bc}.ra-container{background:var(--ra-surface);border:1px solid var(--ra-border);border-radius:8px;overflow:hidden}.ra-container-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--ra-bg);border-bottom:1px solid var(--ra-border);cursor:pointer;-webkit-user-select:none;user-select:none}.ra-container-header:hover{background:var(--ra-surface)}.ra-container-header .ra-section-title{margin:0}.ra-container-toggle{display:flex;align-items:center;justify-content:center;color:var(--ra-text-secondary);transition:transform .2s}.ra-container-toggle.collapsed{transform:rotate(-90deg)}.ra-container-content{padding:16px}.ra-container-collapsed .ra-container-header{border-bottom:none}.ra-layout-stack{display:flex;flex-direction:column;gap:16px}.ra-layout-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.ra-layout-columns{display:flex;flex-direction:column;gap:16px}@media(min-width:600px){.ra-layout-columns{flex-direction:row}.ra-layout-columns>*{flex:1;min-width:0}}.ra-tabs{background:var(--ra-surface);border:1px solid var(--ra-border);border-radius:8px;overflow:hidden}.ra-tabs-header{display:flex;gap:0;background:var(--ra-bg);border-bottom:1px solid var(--ra-border);overflow-x:auto;-webkit-overflow-scrolling:touch}.ra-tabs-bottom .ra-tabs-header{border-bottom:none;border-top:1px solid var(--ra-border)}.ra-tab-button{display:flex;align-items:center;gap:6px;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--ra-text-secondary);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s,background .15s}.ra-tab-button:hover{color:var(--ra-text);background:var(--ra-surface)}.ra-tab-button.active{color:var(--ra-accent);border-bottom-color:var(--ra-accent)}.ra-tabs-bottom .ra-tab-button{border-bottom:none;border-top:2px solid transparent}.ra-tabs-bottom .ra-tab-button.active{border-top-color:var(--ra-accent)}.ra-tab-icon{font-size:14px}.ra-tabs-content{padding:16px}.ra-accordion{background:var(--ra-surface);border:1px solid var(--ra-border);border-radius:8px;overflow:hidden}.ra-accordion-section{border-bottom:1px solid var(--ra-border)}.ra-accordion-section:last-child{border-bottom:none}.ra-accordion-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 16px;background:transparent;border:none;color:var(--ra-text);font-size:14px;font-weight:500;cursor:pointer;text-align:left;transition:background .15s}.ra-accordion-header:hover{background:var(--ra-bg)}.ra-accordion-title{display:flex;align-items:center;gap:8px}.ra-accordion-icon{font-size:16px}.ra-accordion-toggle{display:flex;align-items:center;justify-content:center;color:var(--ra-text-secondary);transition:transform .2s}.ra-accordion-toggle.open{transform:rotate(180deg)}.ra-accordion-content{padding:0 16px 16px}.ra-accordion-section.open .ra-accordion-header{border-bottom:1px solid var(--ra-border)}.ra-fullscreen-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--ra-surface);border:1px solid var(--ra-border);border-radius:6px;color:var(--ra-text-secondary);cursor:pointer;flex-shrink:0}.ra-fullscreen-btn:active{color:var(--ra-text);background:var(--ra-bg)}.rich-app-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rich-app-wrapper.is-fullscreen{position:fixed;inset:0;z-index:99999;width:100vw;height:100vh;max-height:none;margin:0;border:none;border-radius:0;display:flex;flex-direction:column}.rich-app-wrapper.is-fullscreen .rich-app-header,.rich-app-wrapper.is-fullscreen .rich-app-nav{flex-shrink:0}.rich-app-wrapper.is-fullscreen .rich-app-main{flex:1;max-height:none;overflow:auto;min-height:0}.header-intent-badge{font-size:11px;padding:2px 8px;border-radius:4px;background:var(--accent-primary, #6366f1);color:#fff;font-weight:500;margin-left:6px;white-space:nowrap}.header-boundary-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--bg-tertiary, #eee);color:var(--text-muted);margin-left:4px;white-space:nowrap}.intent-transition-marker{display:flex;align-items:center;gap:8px;padding:8px 16px;margin:4px 0}.transition-line{flex:1;height:1px;background:var(--border-color, #e0e0e0)}.transition-label{font-size:11px;font-weight:600;color:var(--accent-primary, #6366f1);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.message.output-table .message-content,.message.output-code .message-content{font-family:monospace;font-size:13px}.message.output-document .message-content{line-height:1.8}.suggestion-chips{display:flex;gap:6px;padding:6px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.suggestion-chips::-webkit-scrollbar{display:none}.suggestion-chip{flex-shrink:0;padding:6px 12px;border-radius:16px;border:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #f5f5f5);color:var(--text-color);font-size:13px;cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap}.suggestion-chip:active{background:var(--bg-hover, #eee)}.structured-input{display:flex;flex-direction:column;gap:10px;padding:10px 12px}.structured-field{display:flex;flex-direction:column;gap:4px}.structured-label{font-size:12px;font-weight:500;color:var(--text-muted)}.structured-select,.structured-input-field{padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:var(--bg-secondary, #f5f5f5);color:var(--text-color);font-size:14px;font-family:inherit}.structured-select:focus,.structured-input-field:focus{outline:none;border-color:var(--accent-primary, #6366f1)}.action-input{padding:8px 12px}.action-btn{width:100%;padding:12px;border:none;border-radius:8px;background:var(--accent-primary, #6366f1);color:#fff;font-size:15px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}.action-btn:disabled{opacity:.5}.input-wrapper.search-mode{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.input-wrapper.search-mode .chat-input{padding-left:36px}.drawer-item.capability{display:flex;align-items:center;justify-content:space-between;gap:8px}.drawer-item-chat{width:28px;height:28px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent}.drawer-item-chat:active{background:var(--bg-hover, #eee)}.drawer-section{padding:8px 0;border-bottom:1px solid var(--border-color, #e0e0e0);margin-bottom:8px}.drawer-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:0 0 8px}.drawer-agents{display:flex;flex-direction:column;gap:6px}.agent-btn{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;background:var(--bg-secondary, #f5f5f5);cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent}.agent-btn:active{background:var(--bg-hover, #eee)}.agent-label{font-size:14px;font-weight:500;color:var(--text-color)}.agent-desc{font-size:12px;color:var(--text-muted)}.drawer-transitions{display:flex;flex-direction:column;gap:4px}.transition-item{display:flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:6px;cursor:pointer;-webkit-tap-highlight-color:transparent}.transition-item:active{background:var(--bg-hover, #eee)}.transition-item .transition-label{font-size:14px;color:var(--accent-primary, #6366f1);text-transform:none;letter-spacing:normal;font-weight:500}.transition-when{font-size:12px;color:var(--text-muted)}.install-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.install-banner-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.install-banner-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:#fff;border-radius:10px}.install-banner-text{display:flex;flex-direction:column;gap:2px;min-width:0}.install-banner-text strong{font-size:14px;color:var(--text-primary)}.install-banner-text span{font-size:12px;color:var(--text-muted)}.install-banner-actions{display:flex;gap:8px;flex-shrink:0}.install-banner-dismiss{padding:8px 12px;background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer}.install-banner-btn{padding:8px 16px;background:var(--accent-primary);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer}.install-banner-btn:active{opacity:.8}.install-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:24px;z-index:2000}.install-modal{background:var(--bg-secondary);border-radius:16px;width:100%;max-width:320px;overflow:hidden}.install-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-color)}.install-modal-header h3{margin:0;font-size:17px;font-weight:600;color:var(--text-primary)}.install-modal-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:none;border-radius:50%;color:var(--text-muted);font-size:18px;cursor:pointer}.install-modal-content{padding:16px;display:flex;flex-direction:column;gap:16px}.install-step{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-primary)}.install-step-num{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--accent-primary);color:#fff;border-radius:50%;font-size:12px;font-weight:600}.install-step .install-icon{flex-shrink:0;color:var(--accent-primary)}.install-modal-btn{margin:16px;padding:14px;background:var(--accent-primary);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer}.install-modal-btn:active{opacity:.8}.connection-page{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.connection-header{padding:16px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.connection-header h1{margin:0;font-size:24px;font-weight:600;color:var(--text-primary)}.scan-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.scan-btn:active{opacity:.8}.connection-connecting{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:12px}.connection-connecting p{color:var(--text-muted);margin:0}.connection-error{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin:8px;background:#ef44441a;border-radius:8px;color:var(--accent-danger);font-size:14px}.connection-error button{background:none;border:none;color:var(--accent-danger);font-size:20px;cursor:pointer;padding:0;line-height:1}.connection-list{flex:1;overflow-y:auto;padding:8px}.connection-empty{padding:16px;color:var(--text-muted)}.setup-guide{text-align:left;background:var(--bg-secondary);border-radius:12px;padding:16px;margin-bottom:16px}.setup-guide h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.setup-step{display:flex;gap:12px;margin-bottom:16px}.setup-step:last-of-type{margin-bottom:0}.step-number{width:24px;height:24px;border-radius:50%;background:var(--accent-primary);color:#fff;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-content{flex:1}.step-title{font-weight:600;color:var(--text-primary);margin-bottom:8px;font-size:14px}.step-content ol{margin:0;padding-left:20px;font-size:13px;color:var(--text-secondary)}.step-content ol li{margin-bottom:4px}.step-content ol li:last-child{margin-bottom:0}.step-content p{margin:0;font-size:13px;color:var(--text-secondary)}.step-content a{color:var(--accent-primary);text-decoration:none}.setup-note{margin-top:16px;padding:10px 12px;background:var(--bg-tertiary);border-radius:8px;font-size:12px;color:var(--text-muted);text-align:center}.setup-divider{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-muted);text-transform:uppercase}.setup-divider:before,.setup-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.connection-item{display:flex;align-items:center;padding:12px;margin-bottom:8px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.connection-item.active{border-color:var(--accent-primary);background:var(--bg-tertiary)}.connection-item-info{flex:1;min-width:0;cursor:pointer}.connection-item-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.connection-item-url{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection-item-actions{display:flex;gap:8px;margin-left:12px}.connection-item.connecting{opacity:.7}.connecting-spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.btn-icon{padding:6px 12px;border:none;border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;cursor:pointer}.btn-icon:active{opacity:.7}.btn-icon.btn-danger{color:var(--accent-danger)}.connection-form{border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.form-header{display:flex;justify-content:space-between;align-items:center;padding:16px;cursor:pointer}.form-header h2{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.form-toggle{color:var(--text-muted);font-size:12px}.form-content{padding:0 16px 16px}.form-error{padding:8px 12px;margin-bottom:12px;background:#ef44441a;border-radius:6px;color:var(--accent-danger);font-size:13px}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:15px;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary)}.form-group input:disabled{opacity:.6;background:var(--bg-tertiary)}.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.form-actions{display:flex;gap:12px;margin-top:16px}.btn{flex:1;padding:12px 16px;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;min-height:44px}.btn:active{opacity:.8}.btn-primary{background:var(--accent-primary);color:#fff}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.connecting-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--bg-primary)}.connecting-content{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:320px;text-align:center}.connecting-spinner{width:48px;height:48px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.connecting-text{display:flex;flex-direction:column;gap:8px}.connecting-text h2{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.connecting-text p{margin:0;font-size:14px;color:var(--text-muted)}.connecting-error{display:flex;flex-direction:column;align-items:center;gap:16px}.connecting-error-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--error-bg, rgba(239, 68, 68, .1));color:var(--error-color, #ef4444);border-radius:50%}.connecting-error-text{display:flex;flex-direction:column;gap:8px}.connecting-error-text h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.connecting-error-text p{margin:0;font-size:14px;color:var(--text-muted);line-height:1.5}.connecting-actions{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:8px}.connecting-actions .btn{width:100%;padding:14px 20px;border:none;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer}.connecting-actions .btn-primary{background:var(--accent-primary);color:#fff}.connecting-actions .btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.chat-page{display:flex;flex-direction:column;height:100%;overflow-x:hidden;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.chat-not-connected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;color:var(--text-secondary)}.connect-btn{padding:12px 24px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500;min-height:44px}.connect-btn:active{opacity:.8}.cancel-btn{padding:12px 24px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:15px;font-weight:500;min-height:44px}.cancel-btn:active{opacity:.8}.connecting-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}.connection-error{color:var(--accent-danger);font-size:13px;max-width:280px;word-break:break-word}.drawer-overlay{position:fixed;inset:0;background:#00000080;z-index:1000}.drawer{position:fixed;top:0;bottom:0;width:280px;max-width:85%;background:var(--bg-secondary);display:flex;flex-direction:column;animation:slideIn .25s ease}.drawer-left{left:0;border-right:1px solid var(--border-color)}.drawer-right{right:0;border-left:1px solid var(--border-color)}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.drawer-right{animation-name:slideInRight}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-header{display:flex;align-items:center;gap:8px;padding:16px;padding-top:calc(env(safe-area-inset-top) + 16px);border-bottom:1px solid var(--border-color)}.drawer-header h2{flex:1;margin:0;font-size:18px;font-weight:600}.drawer-close{width:32px;height:32px;background:none;border:none;font-size:24px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.drawer-content{flex:1;overflow-y:auto;padding:8px}.drawer-create{display:flex;gap:8px;padding:8px;margin-bottom:8px}.drawer-create input{flex:1;min-width:0;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.drawer-create button{width:44px;height:44px;border:none;border-radius:8px;background:var(--accent-primary);color:#fff;font-size:20px;font-weight:700}.drawer-create button:disabled{opacity:.5}.drawer-accordion{border-bottom:1px solid var(--border-color);margin-bottom:8px}.drawer-accordion-header{display:flex;align-items:center;gap:8px;padding:12px;cursor:pointer;color:var(--text-muted);font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.drawer-accordion-header:active{background:var(--bg-tertiary);color:var(--text-primary)}.drawer-accordion-icon{font-size:8px}.drawer-accordion-title{flex:1}.drawer-accordion-action{background:none;border:none;padding:6px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:4px}.drawer-accordion-action:active{background:var(--bg-tertiary);color:var(--text-primary)}.drawer-accordion-content{background:var(--bg-secondary)}.drawer-accordion-content .drawer-item{padding-left:24px;font-size:13px}.drawer-accordion-empty{padding:10px 24px;color:var(--text-muted);font-size:13px;font-style:italic}.drawer-special-sessions{margin-bottom:8px}.drawer-divider{height:1px;background:var(--border-color);margin:8px 0}.drawer-item{display:flex;align-items:center;padding:12px;margin-bottom:4px;border-radius:8px;cursor:pointer;color:var(--text-secondary)}.drawer-item:active{background:var(--bg-tertiary)}.drawer-item.active{background:var(--accent-primary);color:#fff}.drawer-item.special{font-weight:500}.drawer-item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-item-delete{width:32px;height:32px;background:none;border:none;color:var(--text-muted);font-size:18px;display:flex;align-items:center;justify-content:center;border-radius:4px}.drawer-item.active .drawer-item-delete{color:#ffffffb3}.drawer-empty,.drawer-loading{padding:24px;text-align:center;color:var(--text-muted)}.drawer-list{list-style:none;margin:0;padding:0}.tool-count{background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;padding:2px 8px;border-radius:12px}.tool-calls-list{display:flex;flex-direction:column;gap:8px}.tool-call-entry{background:var(--bg-tertiary);border-radius:8px;padding:12px;cursor:pointer}.tool-call-entry.expanded{background:var(--bg-primary);border:1px solid var(--border-color)}.tool-call-header{display:flex;align-items:center;gap:8px;font-size:13px}.tool-status-icon{font-size:14px}.tool-status-icon.running{color:var(--accent-warning);animation:spin 1s linear infinite}.tool-status-icon.success{color:var(--accent-success)}.tool-status-icon.error{color:var(--accent-danger)}.tool-name-container{flex:1;display:flex;flex-direction:column;min-width:0}.tool-name{font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-delegated-to{font-size:11px;color:var(--accent-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-time,.tool-duration{color:var(--text-muted);font-size:11px}.tool-input-preview{margin-top:6px;font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-call-details{margin-top:12px}.tool-detail-section{margin-bottom:12px}.tool-detail-label{font-size:11px;font-weight:500;color:var(--text-muted);margin-bottom:4px}.tool-detail-content{font-size:12px;background:var(--bg-tertiary);padding:8px;border-radius:4px;overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word}.tool-call-entry.phase{background:var(--bg-secondary);border-left:3px solid var(--accent-primary)}.tool-call-entry.phase .tool-name{color:var(--accent-primary)}.tool-call-entry.phase.success{border-left-color:var(--accent-success)}.tool-call-entry.phase.success .tool-name{color:var(--text-primary)}.tool-call-entry.prerequisite{background:var(--bg-secondary);border-left:3px solid var(--accent-warning)}.tool-call-entry.prerequisite .tool-name{color:var(--accent-warning)}.tool-call-entry.prerequisite.success{border-left-color:var(--accent-success)}.tool-call-entry.prerequisite.success .tool-name{color:var(--text-primary)}.tool-call-entry.prerequisite.error{border-left-color:var(--accent-danger)}.tool-detail-content.tool-error{color:var(--accent-danger)}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{--radius: 8px}:root,[data-theme=tango]{--bg-primary: #2e3436;--bg-secondary: #3c3c3c;--bg-tertiary: #4a4a4a;--bg-hover: #555753;--border-color: #555753;--text-primary: #eeeeec;--text-secondary: #babdb6;--text-muted: #888a85;--accent-primary: #729fcf;--accent-success: #8ae234;--accent-warning: #fcaf3e;--accent-danger: #ef2929;--accent-info: #ad7fa8}[data-theme=dark]{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--bg-hover: #30363d;--border-color: #30363d;--text-primary: #e6edf3;--text-secondary: #8b949e;--text-muted: #6e7681;--accent-primary: #58a6ff;--accent-success: #3fb950;--accent-warning: #d29922;--accent-danger: #f85149;--accent-info: #a371f7}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f6f8fa;--bg-tertiary: #eaeef2;--bg-hover: #f3f4f6;--border-color: #d0d7de;--text-primary: #1f2328;--text-secondary: #59636e;--text-muted: #8c959f;--accent-primary: #0969da;--accent-success: #1a7f37;--accent-warning: #9a6700;--accent-danger: #d1242f;--accent-info: #8250df}[data-theme=blue]{--bg-primary: #15202b;--bg-secondary: #192734;--bg-tertiary: #22303c;--bg-hover: #2c3e50;--border-color: #38444d;--text-primary: #ffffff;--text-secondary: #8899a6;--text-muted: #657786;--accent-primary: #1d9bf0;--accent-success: #00ba7c;--accent-warning: #ffad1f;--accent-danger: #f4212e;--accent-info: #794bc4}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{height:100%;min-height:calc(100% + env(safe-area-inset-top))}body{margin:0;padding:0;height:100%;width:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg-primary);color:var(--text-primary);font-size:15px;line-height:1.5}#root{height:100%;width:100%}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}.app-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:var(--text-secondary)}.loading-spinner,.connecting-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
