:root{--font-mono: "IBM Plex Mono", "SF Mono", Consolas, monospace;--font-sans: system-ui, -apple-system, sans-serif;--color-bg-primary: #ffffff;--color-bg-secondary: #fafafa;--color-bg-tertiary: #f5f5f5;--color-bg-elevated: #ffffff;--color-text-primary: #1a1a1a;--color-text-secondary: #555555;--color-text-muted: #888888;--color-border-default: #e0e0e0;--color-border-subtle: #eeeeee;--color-border-focus: #d0d0d0;--color-accent-primary: #ff6b00;--color-accent-secondary: #ff8c33;--color-accent-muted: rgba(255, 107, 0, .1);--color-accent-hover: rgba(255, 107, 0, .15);--color-success: #22c55e;--color-warning: #eab308;--color-error: #ef4444;--color-info: #3b82f6;--color-priority-low: #888888;--color-priority-medium: #555555;--color-priority-high: #ff6b00;--color-priority-critical: #ef4444;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--column-width: 320px;--column-gap: 16px;--header-height: 56px;--border-radius: 2px;--touch-target-min: 44px;--space-mobile-gutter: 12px;--mobile-column-width: calc(100vw - 24px) ;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 4px rgba(0, 0, 0, .08);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .1);--transition-fast: .1s ease;--transition-normal: .2s ease}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:var(--font-mono);font-size:14px;line-height:1.5;color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3}p{margin:0}a{color:var(--color-accent-primary);text-decoration:none}a:hover{text-decoration:underline}input,textarea,select{font-family:var(--font-mono);font-size:14px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border-default);border-radius:var(--border-radius)}::-webkit-scrollbar-thumb:hover{background:var(--color-border-focus)}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-accent{color:var(--color-accent-primary)}:focus-visible{outline:2px solid var(--color-accent-primary);outline-offset:2px}@media(max-width:767px){:root{--column-width: var(--mobile-column-width);--column-gap: 0;--header-height: 52px}body{font-size:16px;-webkit-text-size-adjust:100%}#root{min-height:100vh;min-height:100dvh}::-webkit-scrollbar{width:4px;height:4px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-mono);font-weight:500;border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{font-size:12px;padding:var(--space-1) var(--space-2)}.btn-md{font-size:13px;padding:var(--space-2) var(--space-3)}.btn-default{background:var(--color-bg-primary);border:1px solid var(--color-border-default);color:var(--color-text-secondary)}.btn-default:hover:not(:disabled){border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.btn-primary{background:var(--color-accent-primary);border:1px solid var(--color-accent-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-secondary);border-color:var(--color-accent-secondary)}.btn-ghost{background:transparent;border:1px solid transparent;color:var(--color-text-muted)}.btn-ghost:hover:not(:disabled){background:var(--color-accent-muted);color:var(--color-accent-primary)}.btn-danger{background:#ef4444;border:1px solid #ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-agent{background:linear-gradient(135deg,#ff6b00,#ff8533);border:1px solid transparent;color:#fff;position:relative;overflow:hidden}.btn-agent:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .6s ease}.btn-agent:hover:not(:disabled){box-shadow:0 2px 8px #ff6b0040}.btn-agent:hover:not(:disabled):before{left:100%}@media(max-width:767px){.btn{min-height:var(--touch-target-min)}.btn-sm{min-height:36px;font-size:13px;padding:var(--space-2) var(--space-3)}.btn-md{min-height:var(--touch-target-min);font-size:14px;padding:var(--space-3) var(--space-4)}}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-1)}.input-label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.input{font-family:var(--font-mono);font-size:14px;padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);color:var(--color-text-primary);transition:border-color var(--transition-fast)}.input::placeholder{color:var(--color-text-muted)}.input:focus{outline:none;border-color:var(--color-accent-primary)}.input:disabled{background:var(--color-bg-secondary);cursor:not-allowed}.input-error{border-color:var(--color-error)}.input-error:focus{border-color:var(--color-error)}.input-error-text{font-size:12px;color:var(--color-error)}.textarea{min-height:100px;resize:vertical}@media(max-width:767px){.input{font-size:16px;min-height:var(--touch-target-min);padding:var(--space-3)}.input-label{font-size:13px}.textarea{min-height:120px;font-size:16px}}.modal-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal{background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);max-height:calc(100vh - var(--space-8));overflow:hidden;display:flex;flex-direction:column}.modal-sm{width:100%;max-width:400px}.modal-md{width:100%;max-width:560px}.modal-lg{width:100%;max-width:720px}.modal-full{width:100%;max-width:1200px;height:calc(100vh - var(--space-8))}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default)}.modal-header-left{display:flex;align-items:center;gap:var(--space-2)}.modal-back{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.modal-back:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-title{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary)}.modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);font-size:20px;cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-content{padding:var(--space-4);overflow-x:hidden;overflow-y:auto;flex:1;min-height:0}.modal-full .modal-content{padding:0;overflow:hidden}@media(max-width:767px){.modal-overlay{padding:0;align-items:stretch}.modal,.modal-sm,.modal-md,.modal-lg,.modal-full{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;border:none}.modal-header{position:sticky;top:0;z-index:10;background:var(--color-bg-primary);padding:var(--space-3) var(--space-4);min-height:var(--header-height)}.modal-back,.modal-close{width:var(--touch-target-min);height:var(--touch-target-min);font-size:24px}.modal-title{font-size:16px}.modal-content{flex:1;padding:var(--space-4);overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom,var(--space-4))}.modal-full .modal-content{padding:0}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:200px;padding:2rem}.error-boundary-content{text-align:center;max-width:400px}.error-boundary-content h2{color:var(--color-text);margin-bottom:.5rem}.error-boundary-content p{color:var(--color-text-secondary);margin-bottom:1rem}.error-boundary-retry{padding:.5rem 1rem;background:var(--color-primary);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem}.error-boundary-retry:hover{opacity:.9}.rte-container{display:flex;flex-direction:column;gap:var(--space-2)}.rte-label{font-size:var(--text-sm);font-weight:500;color:var(--color-text-secondary)}.rte-wrapper{position:relative}.rte-editor{width:100%;padding:var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5;background:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.rte-editor:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.rte-editor.rte-empty:before{content:attr(data-placeholder);color:var(--color-text-muted);pointer-events:none;position:absolute}.rte-pill{display:inline-flex;align-items:center;gap:4px;padding:0 6px 0 4px;margin:0 1px;background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:999px;font-size:12px;font-weight:500;line-height:1.4;color:var(--color-text-primary);text-decoration:none;vertical-align:text-bottom;cursor:pointer;-webkit-user-select:none;user-select:none}.rte-pill:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-emphasis);color:var(--color-text-primary);text-decoration:none}.rte-pill:visited{color:var(--color-text-primary)}.rte-pill-icon{display:inline-flex;width:12px;height:12px;flex-shrink:0}.rte-pill-icon[data-type=google_doc]:before{content:"";width:12px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%234285F4' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6z'/%3E%3Cpath fill='%23fff' d='M14 2v6h6'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='1.5' d='M8 13h8M8 17h5'/%3E%3C/svg%3E") no-repeat center;background-size:contain}.rte-pill-icon[data-type=google_sheet]:before{content:"";width:12px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%2334A853' d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6z'/%3E%3Cpath fill='%23fff' d='M14 2v6h6'/%3E%3Crect x='7' y='12' width='10' height='7' fill='none' stroke='%23fff' stroke-width='1'/%3E%3Cline x1='7' y1='15' x2='17' y2='15' stroke='%23fff' stroke-width='1'/%3E%3Cline x1='12' y1='12' x2='12' y2='19' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E") no-repeat center;background-size:contain}.rte-pill-icon[data-type=github_pr]:before,.rte-pill-icon[data-type=github_issue]:before,.rte-pill-icon[data-type=github_repo]:before{content:"";width:12px;height:12px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23333'%3E%3Cpath d='M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z'/%3E%3C/svg%3E") no-repeat center;background-size:contain}.rte-pill-title{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rte-tooltip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;font-size:12px;color:var(--color-text-secondary);z-index:10000;animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rte-tooltip-loading{color:var(--color-text-muted);font-style:italic}.rte-tooltip-key{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:4px;font-size:10px;font-family:var(--font-mono);font-weight:500;color:var(--color-text-muted);text-transform:lowercase}.rte-tooltip-text{color:var(--color-text-muted)}.rte-tooltip-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 6px;background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:999px;font-size:12px;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:background .15s ease,border-color .15s ease}.rte-tooltip-pill:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-emphasis)}.rte-tooltip-title{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:767px){.rte-tooltip{max-width:calc(100vw - 32px)}.rte-tooltip-title{max-width:100px}.rte-pill-title{max-width:120px}}.accounts-section{display:flex;flex-direction:column;gap:var(--space-2)}.account-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);transition:border-color var(--transition-fast)}.account-card.connected{border-color:var(--color-success);border-color:#22c55e4d}.account-card-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.account-card-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-card-icon svg{width:18px;height:18px}.account-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.account-card-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.account-card-meta{font-size:11px;color:var(--color-text-muted)}.account-card.connected .account-card-meta{color:var(--color-success)}.account-card-actions{flex-shrink:0}.account-disconnect-btn{padding:4px 8px;font-size:11px;font-weight:500;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast)}.account-disconnect-btn:hover{color:#ef4444;border-color:#ef444480;background:#ef44441a}.accounts-hint{margin:0;padding:var(--space-2);font-size:12px;color:var(--color-text-muted);font-style:italic}.mcp-form{display:flex;flex-direction:column;gap:var(--space-3)}.mcp-form-error{padding:var(--space-2) var(--space-3);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--border-radius);color:#ef4444;font-size:13px}.mcp-form-status{padding:var(--space-2) var(--space-3);background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:var(--border-radius);color:#3b82f6;font-size:13px}.mcp-form-field{display:flex;flex-direction:column;gap:var(--space-1)}.mcp-form-label{font-size:13px;font-weight:500;color:var(--color-text-primary)}.mcp-form-hint{font-size:11px;color:var(--color-text-muted)}.mcp-type-toggle{display:flex;background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);padding:2px}.mcp-type-option{flex:1;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:calc(var(--border-radius) - 2px);font-size:13px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.mcp-type-option:hover:not(.active){color:var(--color-text-primary)}.mcp-type-option.active{background:var(--color-bg-secondary);color:var(--color-text-primary);box-shadow:0 1px 2px #0000000d}.mcp-form-select{padding:var(--space-2) var(--space-3);font-size:13px;background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-fast)}.mcp-form-select:hover{border-color:var(--color-border-emphasis)}.mcp-form-select:focus{outline:none;border-color:var(--color-accent-primary)}.mcp-form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.mcp-list{display:flex;flex-direction:column;gap:var(--space-2)}.mcp-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius)}.mcp-item-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.mcp-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-text-muted)}.mcp-item-icon svg{width:18px;height:18px}.mcp-item-icon.github{color:var(--color-text-primary)}.mcp-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.mcp-item-name{font-size:13px;font-weight:500;color:var(--color-text-primary);display:flex;align-items:center;gap:var(--space-2)}.mcp-item-account{font-size:11px;font-weight:400;color:var(--color-text-muted)}.mcp-item-meta{font-size:11px;color:var(--color-text-muted)}.mcp-tools-more{cursor:default}.mcp-tools-more .mcp-tools-tooltip{margin-top:-6px;padding:6px 10px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:11px;color:var(--color-text-primary);max-width:250px;box-shadow:0 2px 8px #00000026;z-index:9999;pointer-events:none}.mcp-item-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);font-size:18px;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.mcp-item-delete:hover{background:#ef44441a;color:#ef4444}.mcp-empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius)}.mcp-empty p{margin:0;font-size:13px;color:var(--color-text-muted)}.mcp-add-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius)}.mcp-add-form-header{font-size:13px;font-weight:500;color:var(--color-text-primary)}.mcp-add-form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.mcp-options{display:flex;flex-direction:column;gap:var(--space-2)}.mcp-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast);text-align:left;width:100%}.mcp-option:hover:not(:disabled){border-color:var(--color-border-emphasis);background:var(--color-bg-primary)}.mcp-option:disabled{opacity:.6;cursor:not-allowed}.mcp-option-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mcp-option-icon svg{width:18px;height:18px}.mcp-option-icon.mcp{color:var(--color-text-muted)}.mcp-option-icon.github{color:var(--color-text-primary)}.mcp-option-info{flex:1;min-width:0}.mcp-option-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.mcp-option-desc{font-size:11px;color:var(--color-text-muted);margin-top:1px}.mcp-option-arrow{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0}.mcp-option-spinner{width:14px;height:14px;border:2px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:mcp-spin .8s linear infinite;flex-shrink:0}@keyframes mcp-spin{to{transform:rotate(360deg)}}.mcp-add-btn{align-self:flex-start}.settings-content{display:flex;flex-direction:column;gap:var(--space-5)}.settings-error{padding:var(--space-3);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--border-radius);color:#ef4444;font-size:13px}.settings-section{display:flex;flex-direction:column;gap:var(--space-3)}.settings-section-header{display:flex;flex-direction:column;gap:var(--space-1)}.settings-section-title{font-size:13px;font-weight:600;color:var(--color-text-primary);margin:0}.settings-section-hint{font-size:12px;color:var(--color-text-muted)}.settings-loading{padding:var(--space-3);text-align:center;color:var(--color-text-muted);font-size:13px}.settings-empty{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius)}.settings-empty p{margin:0;font-size:13px;color:var(--color-text-muted)}.credentials-list{display:flex;flex-direction:column;gap:var(--space-2)}.credential-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius)}.credential-info{display:flex;flex-direction:column;gap:2px}.credential-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.credential-type{font-size:11px;color:var(--color-text-muted);font-family:var(--font-mono)}.credential-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);font-size:18px;cursor:pointer;transition:all var(--transition-fast)}.credential-delete:hover{background:#ef44441a;color:#ef4444}.credential-actions{display:flex;align-items:center;gap:var(--space-2)}.credential-replace{padding:var(--space-1) var(--space-2);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--border-radius);color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;cursor:pointer;transition:all var(--transition-fast)}.credential-replace:hover{border-color:var(--color-border-focus);color:var(--color-text-primary)}.api-key-form{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--border-radius)}.api-key-form-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}.add-another-btn{align-self:flex-start}@media(max-width:767px){.settings-content{gap:var(--space-4)}.credential-item{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.credential-delete{align-self:flex-end;width:var(--touch-target-min);height:var(--touch-target-min)}.api-key-form-actions{flex-direction:column}.api-key-form-actions>*{width:100%}.add-another-btn{width:100%}}.header{position:relative;display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 var(--space-4);background:var(--color-bg-primary);border-bottom:1px solid var(--color-border-default)}.weft-logo{display:flex;align-items:center;gap:var(--space-2);cursor:pointer}.weft-logo-icon{color:var(--color-accent-primary)}.weft-logo-text{font-size:14px;font-weight:600;color:var(--color-accent-primary);letter-spacing:2px}.weft-logo-icon{overflow:visible}.weft-logo-icon .weft{transition:transform .35s cubic-bezier(.25,.46,.45,.94)}.weft-logo:hover .weft-top-1{transform:translate(-2px)}.weft-logo:hover .weft-top-2{transform:translateY(-1px)}.weft-logo:hover .weft-top-3{transform:translate(2px)}.weft-logo:hover .weft-mid-1{transform:translate(-1.5px);transition-delay:40ms}.weft-logo:hover .weft-mid-2{transform:translateY(.5px);transition-delay:40ms}.weft-logo:hover .weft-mid-3{transform:translate(1.5px);transition-delay:40ms}.weft-logo:hover .weft-bot-1{transform:translate(-2px);transition-delay:80ms}.weft-logo:hover .weft-bot-2{transform:translateY(1px);transition-delay:80ms}.weft-logo:hover .weft-bot-3{transform:translate(2px);transition-delay:80ms}.header-center{position:absolute;left:50%;transform:translate(-50%);display:flex;justify-content:center}.header-right{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.header-settings-btn{padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--border-radius);font-family:var(--font-mono);font-size:12px;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.header-settings-btn:hover{border-color:var(--color-border-focus);color:var(--color-text-primary)}.board-selector-wrapper{position:relative}.board-selector-trigger{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--border-radius);font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast)}.board-selector-trigger:hover{border-color:var(--color-border-focus)}.board-selector-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-selector-arrow{font-size:10px;color:var(--color-text-muted)}.board-selector-dropdown{position:absolute;top:calc(100% + var(--space-1));left:50%;transform:translate(-50%);min-width:200px;max-width:300px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.board-selector-empty{padding:var(--space-3);color:var(--color-text-muted);font-size:13px;text-align:center}.board-selector-item{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.board-selector-item:hover{background:var(--color-bg-tertiary)}.board-selector-item.active{background:var(--color-accent-muted);color:var(--color-accent-primary)}.board-selector-divider{height:1px;background:var(--color-border-default);margin:var(--space-1) 0}.board-selector-new{color:var(--color-accent-primary)}.executions-wrapper{position:relative;margin-right:var(--space-2)}.executions-trigger{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-accent-muted);border:1px solid var(--color-accent-primary);border-radius:var(--border-radius);font-family:var(--font-mono);font-size:12px;color:var(--color-accent-primary);cursor:pointer;transition:all var(--transition-fast)}.executions-trigger:hover{background:var(--color-accent-primary);color:#fff}.executions-trigger-empty{background:var(--color-bg-tertiary);border-color:var(--color-border-default);color:var(--color-text-muted)}.executions-trigger-empty:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.executions-icon{font-size:12px}.executions-count{font-weight:600;min-width:16px;text-align:center}.executions-dropdown{position:absolute;top:calc(100% + var(--space-1));right:0;width:320px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.executions-header{padding:var(--space-2) var(--space-3);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-default)}.executions-empty{padding:var(--space-3);color:var(--color-text-muted);font-size:12px;text-align:center}.executions-item{display:flex;align-items:center;width:100%;background:transparent;border:none;border-bottom:1px solid var(--color-border-default);font-family:var(--font-mono);font-size:12px;text-align:left;transition:background var(--transition-fast)}.executions-item:hover{background:var(--color-bg-tertiary)}.executions-item:last-child{border-bottom:none}.executions-item-main{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0;padding:var(--space-2) var(--space-3);background:transparent;border:none;font-family:inherit;font-size:inherit;text-align:left;cursor:pointer;overflow:hidden}.executions-item-stop{padding:var(--space-1) var(--space-2);margin-right:var(--space-2);background:transparent;border:1px solid var(--color-border-default);color:var(--color-text-muted);cursor:pointer;opacity:0;transition:all var(--transition-fast);font-size:11px;border-radius:var(--border-radius-sm);font-family:inherit;flex-shrink:0}.executions-item:hover .executions-item-stop{opacity:1}.executions-item-stop:hover{color:var(--color-text-primary);border-color:var(--color-border-focus)}.executions-item-stop.confirming{opacity:1;color:#ef4444;background:#ef44441a;border-color:#ef44444d;font-weight:500}button.executions-item{padding:var(--space-2) var(--space-3);gap:var(--space-2);cursor:pointer}.executions-item-status{font-size:16px;color:var(--color-accent-primary);animation:pulse 1.5s ease-in-out infinite;flex-shrink:0;margin-right:var(--space-1)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.executions-item-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;overflow:hidden}.executions-item-title{color:var(--color-text-primary);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.executions-item-step{color:var(--color-text-muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.executions-item-status.status-checkpoint{color:#f59e0b;animation:none;font-size:14px}@media(max-width:767px){.header{padding:0 var(--space-mobile-gutter)}.weft-logo-text{display:none}.header-center{position:static;transform:none;flex:1}.board-selector-trigger{padding:var(--space-2);min-height:var(--touch-target-min)}.board-selector-name{max-width:140px;font-size:12px}.board-selector-dropdown{position:fixed;top:var(--header-height);left:var(--space-mobile-gutter);right:var(--space-mobile-gutter);max-width:none;transform:none;max-height:calc(100vh - var(--header-height) - var(--space-8));max-height:calc(100dvh - var(--header-height) - var(--space-8));overflow-y:auto}.board-selector-item{padding:var(--space-3);min-height:var(--touch-target-min)}.header-settings-btn{min-width:var(--touch-target-min);min-height:var(--touch-target-min);padding:var(--space-2)}.executions-wrapper{margin-right:0}.executions-trigger{min-height:var(--touch-target-min);padding:var(--space-2)}.executions-dropdown{position:fixed;top:var(--header-height);left:var(--space-mobile-gutter);right:var(--space-mobile-gutter);width:auto;max-height:calc(100vh - var(--header-height) - var(--space-8));max-height:calc(100dvh - var(--header-height) - var(--space-8));overflow-y:auto}.executions-item{min-height:var(--touch-target-min)}.executions-item-main{padding:var(--space-3)}.executions-item-stop{opacity:1;min-width:var(--touch-target-min);min-height:36px}.modal-form{gap:var(--space-3)}.modal-actions{flex-direction:column;gap:var(--space-2)}.modal-actions>*{width:100%}}.user-menu-wrapper{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:var(--space-2);padding:4px;padding-right:var(--space-3);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast)}.user-menu-trigger:hover{border-color:var(--color-border-focus)}.user-avatar-circle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-accent-muted);border-radius:50%;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--color-accent-primary)}.user-menu-chevron{font-size:10px;color:var(--color-text-primary)}.user-menu-dropdown{position:absolute;top:calc(100% + var(--space-1));right:0;min-width:180px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.user-menu-email{padding:var(--space-3);font-size:12px;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-divider{height:1px;background:var(--color-border-default)}.user-menu-item{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.user-menu-item:hover{background:var(--color-bg-tertiary)}.user-menu-signout{color:#ef4444}.user-menu-signout:hover{background:#ef44441a}@media(max-width:767px){.user-menu-trigger{min-height:var(--touch-target-min);padding:var(--space-2);padding-right:var(--space-2)}.user-avatar-circle{width:28px;height:28px}.user-menu-dropdown{position:fixed;top:var(--header-height);left:var(--space-mobile-gutter);right:var(--space-mobile-gutter);min-width:auto}.user-menu-item{padding:var(--space-3);min-height:var(--touch-target-min);display:flex;align-items:center}}.home{flex:1;display:flex;justify-content:center;padding:var(--space-6);background:var(--color-bg-secondary);overflow-y:auto}.home-container{width:100%;max-width:640px}.home-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.home-title{font-size:18px;font-weight:600;color:var(--color-text-primary)}.home-search{margin-bottom:var(--space-4)}.home-loading{padding:var(--space-6);text-align:center;color:var(--color-text-muted)}.home-empty{padding:var(--space-8);text-align:center;color:var(--color-text-muted);background:var(--color-bg-tertiary);border:1px dashed var(--color-border-default);border-radius:var(--border-radius)}.home-empty p{margin-bottom:var(--space-4)}.home-boards{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border-default);border-radius:var(--border-radius)}.home-boards .board-card:first-child{border-top-right-radius:var(--border-radius)}.home-boards .board-card:last-child{border-bottom-right-radius:var(--border-radius)}.board-card{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-elevated);border:none;border-left:3px solid var(--color-accent-primary);border-bottom:1px solid var(--color-border-default);font-family:var(--font-mono);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.board-card:last-child{border-bottom:none}.board-card:hover{border-left-color:var(--color-border-focus);box-shadow:var(--shadow-sm);background:var(--color-bg-primary)}.board-card-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.board-card-meta{font-size:12px;color:var(--color-text-muted)}.board-card-right{display:flex;align-items:center;gap:var(--space-3)}.board-card-menu-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);font-size:16px;cursor:pointer;opacity:0;transition:all var(--transition-fast)}.board-card:hover .board-card-menu-trigger{opacity:1}.board-card-menu-trigger:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.board-card-dropdown{position:absolute;top:calc(100% + 4px);right:var(--space-2);min-width:120px;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-md);z-index:100;overflow:hidden}.board-card-dropdown button{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;text-align:left;font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast)}.board-card-dropdown button:hover{background:var(--color-bg-tertiary)}.board-card-dropdown button.danger{color:var(--color-status-error)}.board-card-dropdown button.danger:hover{background:#ef44441a}.delete-warning{color:var(--color-text-secondary);font-size:14px;line-height:1.5}.modal-form{display:flex;flex-direction:column;gap:var(--space-4)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2)}@media(max-width:767px){.home{padding:var(--space-4) var(--space-mobile-gutter)}.home-container{max-width:100%}.home-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.home-title{font-size:20px}.board-card{padding:var(--space-4);min-height:64px}.board-card:hover{border-color:var(--color-border-default);box-shadow:none}.board-card:active{background:var(--color-bg-tertiary)}.board-card-name{font-size:15px}.modal-form{gap:var(--space-3)}.modal-actions{flex-direction:column;gap:var(--space-2)}.modal-actions>*{width:100%}}.plan-review{display:flex;flex-direction:column;gap:var(--space-4)}.plan-section{display:flex;flex-direction:column;gap:var(--space-2)}.plan-section-title{margin:0;font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.plan-summary-text{margin:0;font-size:14px;color:var(--color-text-primary);line-height:1.5}.plan-steps-list{display:flex;flex-direction:column;gap:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);overflow:hidden}.plan-step{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-default)}.plan-step:last-child{border-bottom:none}.plan-step.checkpoint{background:#fbbf240d}.plan-step-number{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-tertiary);border-radius:50%;font-size:11px;font-weight:600;color:var(--color-text-muted);flex-shrink:0}.plan-step.checkpoint .plan-step-number{background:#fbbf2433;color:#b45309}.plan-step-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.plan-step-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.plan-step-meta{display:flex;align-items:center;gap:var(--space-2);font-size:11px;color:var(--color-text-muted)}.plan-step-server,.plan-step-tool{font-family:var(--font-mono)}.plan-step-tool:before{content:"→";margin-right:var(--space-1);opacity:.5}.plan-step-checkpoint-badge{display:inline-flex;align-items:center;margin-top:var(--space-1);padding:2px 6px;background:#fbbf2426;border-radius:3px;font-size:10px;font-weight:500;color:#b45309;width:fit-content}.plan-code-toggle{display:inline-flex;align-items:center;gap:var(--space-1);padding:0;background:none;border:none;font-size:12px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast)}.plan-code-toggle:hover{color:var(--color-text-primary)}.plan-code-toggle svg{opacity:.7}.plan-code{margin:0;padding:var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);font-size:11px;font-family:var(--font-mono);overflow-x:auto;max-height:200px;color:var(--color-text-secondary);line-height:1.5}.plan-code code{font-family:inherit}.plan-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border-default)}.plan-generating{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-6) var(--space-4);text-align:center}.plan-generating-spinner{width:32px;height:32px;border:3px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:plan-spin .8s linear infinite}@keyframes plan-spin{to{transform:rotate(360deg)}}.plan-generating-text{display:flex;flex-direction:column;gap:var(--space-2)}.plan-generating-text h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary)}.plan-generating-text p{margin:0;font-size:13px;color:var(--color-text-muted);max-width:300px}.checkpoint-dialog{display:flex;flex-direction:column;gap:var(--spacing-4)}.checkpoint-header{display:flex;align-items:center;gap:var(--spacing-2);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-border)}.checkpoint-icon{font-size:1.5rem;color:var(--color-warning)}.checkpoint-step-name{font-weight:600;color:var(--color-text)}.checkpoint-message{color:var(--color-text-muted);line-height:1.5}.checkpoint-data{display:flex;flex-direction:column;gap:var(--spacing-2)}.checkpoint-toggle{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:0;font-size:.875rem;text-align:left}.checkpoint-toggle:hover{text-decoration:underline}.checkpoint-json{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-3);font-size:.75rem;overflow-x:auto;max-height:200px;margin:0}.checkpoint-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-3);border-top:1px solid var(--color-border)}.step-progress{display:flex;flex-direction:column;gap:0}.step-item{display:grid;grid-template-columns:24px auto 1fr auto;gap:var(--spacing-3);align-items:center;padding:var(--spacing-3) 0;position:relative}.step-item.current{background:var(--color-bg-secondary);margin:0 calc(-1 * var(--spacing-4));padding-left:var(--spacing-4);padding-right:var(--spacing-4);border-radius:var(--radius-md)}.step-connector{position:relative;height:100%;display:flex;align-items:center;justify-content:center}.step-line{position:absolute;width:2px;height:calc(100% + var(--spacing-3));top:calc(-50% - var(--spacing-1-5));left:50%;transform:translate(-50%)}.step-item:first-child .step-line{display:none}.step-icon{font-size:1rem;width:20px;text-align:center;z-index:1;background:var(--color-bg)}.step-item.current .step-icon{background:var(--color-bg-secondary)}.step-content{display:flex;flex-direction:column;gap:var(--spacing-1)}.step-name{font-weight:500;color:var(--color-text)}.step-server{font-size:.75rem;color:var(--color-text-muted)}.step-awaiting{font-size:.75rem;color:var(--color-warning);font-style:italic}.step-type{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.step-item.completed .step-name{color:var(--color-text-muted)}.step-item.failed .step-name{color:var(--color-danger)}.plan-review{display:flex;flex-direction:column;gap:var(--spacing-4)}.plan-summary{padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-border)}.plan-summary h4{margin:0 0 var(--spacing-2) 0;font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.plan-summary p{margin:0;color:var(--color-text);line-height:1.5}.plan-steps{display:flex;flex-direction:column;gap:var(--spacing-2)}.plan-steps h4{margin:0;font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.plan-servers{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.plan-servers-label{font-size:.875rem;color:var(--color-text-muted)}.plan-server-tag{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-2);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.75rem;color:var(--color-text)}.plan-code-section{display:flex;flex-direction:column;gap:var(--spacing-2)}.plan-code-toggle{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:0;font-size:.875rem;text-align:left}.plan-code-toggle:hover{text-decoration:underline}.plan-code{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-3);font-size:.75rem;overflow-x:auto;max-height:300px;margin:0}.plan-code code{font-family:SF Mono,Consolas,monospace}.plan-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-3);border-top:1px solid var(--color-border)}.workflow-monitor{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.workflow-monitor-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-border)}.workflow-monitor-title{font-weight:600;color:var(--color-text)}.workflow-monitor-status{font-size:.875rem;padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full)}.workflow-monitor-status.planning{background:var(--color-info-bg);color:var(--color-info)}.workflow-monitor-status.executing{background:var(--color-primary-bg);color:var(--color-primary)}.workflow-monitor-status.checkpoint{background:var(--color-warning-bg);color:var(--color-warning)}.workflow-monitor-status.completed{background:var(--color-success-bg);color:var(--color-success)}.workflow-monitor-status.failed{background:var(--color-danger-bg);color:var(--color-danger)}.workflow-progress{display:flex;flex-direction:column;gap:var(--space-2)}.workflow-progress-compact{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--border-radius)}.workflow-progress-indicator{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.workflow-progress-icon{font-size:12px;line-height:1}.workflow-progress-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.workflow-progress-icon.spinning{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.workflow-progress-indicator.status-planning .workflow-progress-icon,.workflow-progress-indicator.status-planning .workflow-progress-label{color:#3b82f6}.workflow-progress-indicator.status-draft .workflow-progress-icon,.workflow-progress-indicator.status-draft .workflow-progress-label{color:var(--color-text-muted)}.workflow-progress-indicator.status-executing .workflow-progress-icon{color:transparent;position:relative;width:12px;height:12px}.workflow-progress-indicator.status-executing .workflow-progress-icon:after{content:"";position:absolute;top:0;left:0;width:10px;height:10px;border:2px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.workflow-progress-indicator.status-executing .workflow-progress-label{color:#3b82f6}.workflow-progress-indicator.status-checkpoint .workflow-progress-icon,.workflow-progress-indicator.status-checkpoint .workflow-progress-label{color:#f59e0b}.workflow-progress-indicator.status-completed .workflow-progress-icon,.workflow-progress-indicator.status-completed .workflow-progress-label{color:#22c55e}.workflow-progress-indicator.status-failed .workflow-progress-icon,.workflow-progress-indicator.status-failed .workflow-progress-label{color:#ef4444}.workflow-progress-preview{flex:1;display:flex;align-items:center;gap:var(--space-2);min-width:0;cursor:pointer;padding:var(--space-1) var(--space-2);margin:calc(-1 * var(--space-1)) 0;border-radius:var(--border-radius-sm);transition:background .15s}.workflow-progress-preview:hover{background:var(--color-bg-tertiary)}.workflow-progress-preview .preview-text{flex:1;font-size:12px;font-family:var(--font-mono);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workflow-progress-preview .preview-text.muted{color:var(--color-text-muted);font-style:italic}.workflow-progress-preview .preview-expand{font-size:8px;color:var(--color-text-muted);flex-shrink:0}.workflow-progress-actions{display:flex;gap:var(--space-2);flex-shrink:0}.workflow-progress-panel{display:flex;flex-direction:column;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);overflow:hidden}.workflow-progress-steps{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.workflow-progress-steps .steps-header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:var(--space-2)}.workflow-progress-steps .steps-list{display:flex;flex-direction:column;gap:var(--space-1);max-height:160px;overflow-y:auto}.step-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);font-size:12px;border-radius:var(--border-radius-sm)}.step-row.current{background:var(--color-bg-secondary)}.step-row-icon{font-size:10px;width:14px;text-align:center}.step-row.status-pending .step-row-icon{color:var(--color-text-muted)}.step-row.status-running .step-row-icon{color:#3b82f6}.step-row.status-completed .step-row-icon{color:#22c55e}.step-row.status-failed .step-row-icon{color:#ef4444}.step-row.status-awaiting_approval .step-row-icon{color:#f59e0b}.step-row-name{flex:1;color:var(--color-text-primary)}.step-row.status-completed .step-row-name{color:var(--color-text-muted)}.step-row-server{font-size:10px;color:var(--color-text-muted);padding:var(--space-0-5) var(--space-1);background:var(--color-bg-tertiary);border-radius:var(--border-radius-sm)}.step-row-duration{font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);min-width:40px;text-align:right}.step-row.commentary-step{opacity:.7}.step-row.commentary-step .step-row-icon{font-size:8px}.step-row.commentary-step .step-row-name{font-style:italic;color:var(--color-text-muted)}.step-row.tool-step .step-row-name{font-weight:500}.workflow-progress-logs{padding:0 var(--space-3) var(--space-2);margin-top:var(--space-2)}.workflow-progress-logs .logs-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;background:none;border:none;cursor:pointer;font-family:inherit;text-align:left}.workflow-progress-logs .logs-toggle:hover{opacity:.8}.workflow-progress-logs .logs-toggle-icon{font-size:8px;color:var(--color-text-muted);width:10px}.workflow-progress-logs .logs-toggle-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.workflow-progress-logs .logs-toggle-count{font-size:10px;color:var(--color-text-muted);font-weight:400}.workflow-progress-logs .logs-header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:var(--space-2)}.workflow-progress-logs .logs-empty{padding:var(--space-3);margin-top:var(--space-2);text-align:center;font-size:12px;color:var(--color-text-muted)}.workflow-progress-logs .logs-list{max-height:180px;overflow-y:auto;font-family:var(--font-mono);font-size:11px;margin-top:var(--space-2)}.workflow-progress-logs .log-entry{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--color-border-subtle)}.workflow-progress-logs .log-entry:last-of-type{border-bottom:none}.workflow-progress-logs .log-time{color:var(--color-text-muted);flex-shrink:0;font-size:10px}.workflow-progress-logs .log-msg{flex:1;color:var(--color-text-primary);word-break:break-word}.workflow-progress-logs .log-info .log-msg{color:var(--color-text-secondary)}.workflow-progress-logs .log-warn .log-msg{color:#f59e0b}.workflow-progress-logs .log-error .log-msg{color:#ef4444}.workflow-progress-logs .log-details{width:100%;padding:var(--space-1) var(--space-2);margin-left:var(--space-4);background:var(--color-bg-secondary);border-radius:var(--border-radius-sm);font-size:10px;color:var(--color-text-muted);overflow-x:auto}.workflow-progress-logs .log-details code{white-space:pre-wrap}.workflow-progress-logs .log-duration{font-size:10px;color:var(--color-text-muted);flex-shrink:0}.workflow-progress-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:var(--border-radius);font-size:12px}.workflow-progress-error .error-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:#ef4444;color:#fff;border-radius:50%;font-size:10px;font-weight:700;flex-shrink:0}.workflow-progress-error .error-msg{color:#ef4444}.workflow-progress-checkpoint{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:var(--border-radius);font-size:12px}.workflow-progress-checkpoint .checkpoint-icon{color:#f59e0b;font-size:14px}.workflow-progress-checkpoint .checkpoint-msg{color:#f59e0b}.workflow-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:10px;font-weight:600}.workflow-badge.badge-planning,.workflow-badge.badge-draft{color:var(--color-text-muted)}.workflow-badge.badge-executing{color:transparent;position:relative}.workflow-badge.badge-executing:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.workflow-badge.badge-checkpoint{color:#f59e0b}.workflow-badge.badge-completed{color:#22c55e}.workflow-badge.badge-failed{color:#ef4444}.workflow-badge.badge-artifact{color:var(--color-text-secondary)}.workflow-badge.badge-artifact:hover{color:var(--color-text-primary)}.workflow-artifact-link{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);color:var(--color-text-secondary);border-radius:var(--border-radius);font-size:12px;font-weight:500;font-family:inherit;text-decoration:none;cursor:pointer;transition:all .15s}.workflow-artifact-link:hover{background:var(--color-bg-elevated);border-color:var(--color-border-focus);color:var(--color-text-primary)}.workflow-artifact-link svg{flex-shrink:0}.workflow-artifact-link .artifact-title{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-artifact-link .artifact-pr-number{font-weight:600;color:var(--color-text-secondary);flex-shrink:0}.workflow-artifacts-dropdown{position:relative}.artifact-dropdown-caret{font-size:8px;margin-left:var(--space-1)}.workflow-artifacts-menu{position:absolute;top:100%;right:0;margin-top:var(--space-1);min-width:200px;max-width:300px;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;overflow:hidden}.workflow-artifacts-menu-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);width:100%;background:none;border:none;color:var(--color-text-primary);text-decoration:none;font-size:13px;font-family:inherit;text-align:left;cursor:pointer;transition:background .15s}.workflow-artifacts-menu-item:hover{background:var(--color-bg-tertiary)}.workflow-artifacts-menu-item svg{flex-shrink:0;color:var(--color-text-secondary)}.workflow-artifacts-menu-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-artifacts-menu-item .artifact-pr-number{font-weight:600;color:var(--color-text-secondary);flex-shrink:0}@media(max-width:767px){.workflow-progress-compact{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3)}.workflow-progress-indicator{flex-shrink:0}.workflow-progress-preview{flex:1 1 100%;order:3;min-width:0;margin:0;padding:var(--space-2);background:var(--color-bg-tertiary);border-radius:var(--border-radius)}.workflow-progress-preview .preview-text{font-size:11px}.workflow-progress-actions{margin-left:auto}.workflow-artifact-link{padding:var(--space-1);font-size:11px}.workflow-artifact-link .artifact-title{max-width:100px}.workflow-artifacts-menu{position:fixed;inset:auto 0 0;max-width:none;min-width:auto;border-radius:var(--border-radius) var(--border-radius) 0 0;padding-bottom:env(safe-area-inset-bottom);max-height:60vh;overflow-y:auto;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.workflow-artifacts-menu-item{min-height:var(--touch-target-min);padding:var(--space-3) var(--space-4)}.workflow-progress-steps .steps-list{max-height:200px}.step-row{padding:var(--space-2);flex-wrap:wrap}.step-row-server{display:none}.step-row-duration{font-size:9px}.workflow-progress-logs .logs-list{max-height:150px}.workflow-progress-logs .log-entry{padding:var(--space-2)}.checkpoint-actions{flex-direction:column;gap:var(--space-2)}.checkpoint-actions>*{width:100%}.plan-actions{flex-direction:column;gap:var(--space-2)}.plan-actions>*{width:100%}.step-item{grid-template-columns:20px 1fr auto;gap:var(--space-2)}}.email-viewer{display:flex;flex-direction:column;gap:var(--space-4)}.email-viewer-header{display:flex;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-default)}.email-viewer-meta{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.email-viewer-field{display:flex;gap:var(--space-2);font-size:13px}.email-viewer-label{width:60px;flex-shrink:0;color:var(--color-text-muted)}.email-viewer-value{flex:1;color:var(--color-text-primary);font-family:var(--font-mono)}.email-viewer-subject{font-weight:600;font-family:var(--font-sans)}.email-viewer-date{color:var(--color-text-secondary);font-family:var(--font-sans)}.email-viewer-body{padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);min-height:150px;max-height:400px;overflow-y:auto}.email-viewer-body-text{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word}.commentable-text{display:flex;flex-direction:column;gap:var(--space-2)}.commentable-text-label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.commentable-text-content{border:1px solid var(--color-border-default);border-radius:var(--border-radius);overflow:hidden;background:var(--color-bg-primary)}.commentable-text-line-wrapper{display:flex;flex-direction:column}.commentable-text-line{display:flex;line-height:1.5;min-height:24px;-webkit-user-select:none;user-select:none}.commentable-text-line.selectable{cursor:pointer}.commentable-text-line.selectable:hover{background:#3b82f60f}.commentable-text-line.selectable:hover .commentable-text-comment-indicator.can-comment{opacity:1}.commentable-text-line.selected{background:#3b82f61f}.commentable-text-line.selected .commentable-text-line-number{background:#3b82f633;color:var(--color-text-primary)}.commentable-text-line-number{width:40px;padding:0 var(--space-2);text-align:right;font-size:12px;font-family:var(--font-mono);color:var(--color-text-muted);background:var(--color-bg-secondary);flex-shrink:0}.commentable-text-line-content{flex:1;padding:0 var(--space-3);font-size:13px;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word}.commentable-text-comment-indicator{width:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--color-text-muted);opacity:0;transition:opacity .15s}.commentable-text-comment-indicator.has-comment{opacity:1;color:var(--color-accent-primary)}.commentable-text-comment-input{margin:var(--space-2) var(--space-3);margin-left:56px;padding:var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-left:3px solid var(--color-accent-primary);border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001f}.commentable-text-comment-textarea{width:100%;padding:var(--space-2);background:transparent;border:none;font-family:inherit;font-size:13px;color:var(--color-text-primary);resize:none;min-height:36px;line-height:1.4}.commentable-text-comment-textarea::placeholder{color:var(--color-text-muted)}.commentable-text-comment-textarea:focus{outline:none}.commentable-text-comment-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-default)}.commentable-text-comment-cancel{padding:4px 10px;border:none;border-radius:var(--border-radius);font-size:12px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .15s}.commentable-text-comment-cancel:hover{color:var(--color-text-primary)}.commentable-text-comment-submit{padding:4px 12px;border:none;border-radius:var(--border-radius);font-size:12px;font-weight:500;background:var(--color-accent-primary);color:#fff;cursor:pointer;transition:opacity .15s}.commentable-text-comment-submit:hover:not(:disabled){opacity:.9}.commentable-text-comment-submit:disabled{opacity:.4;cursor:default}.commentable-text-comment{position:relative;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) var(--space-3);margin-left:56px;padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--border-radius);box-shadow:0 1px 2px #0000000d}.commentable-text-comment-lines{flex-shrink:0;font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);padding:2px 8px;background:#3b82f61a;border-radius:10px;align-self:flex-start}.commentable-text-comment-content{flex:1;font-size:13px;color:var(--color-text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.commentable-text-comment-remove{position:absolute;top:var(--space-2);right:var(--space-2);flex-shrink:0;width:20px;height:20px;padding:0;border:none;border-radius:var(--border-radius);background:transparent;color:var(--color-text-muted);font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:all .15s;display:flex;align-items:center;justify-content:center}.commentable-text-comment:hover .commentable-text-comment-remove{opacity:1}.commentable-text-comment-remove:hover{background:#ef444426;color:#ef4444}.commentable-text-prose .commentable-text-content{padding:var(--space-3)}.commentable-text-prose .commentable-text-line{min-height:auto;padding:var(--space-1) 0}.commentable-text-prose .commentable-text-line-content{padding:var(--space-1) var(--space-2);font-family:var(--font-sans);font-size:15px;line-height:1.7;color:var(--color-text-primary)}.commentable-text-prose .commentable-text-line.selectable:hover{background:#3b82f60a;border-radius:var(--radius-sm)}.commentable-text-prose .commentable-text-line.selected{background:#3b82f614;border-radius:var(--radius-sm)}.commentable-text-prose .commentable-text-comment-input,.commentable-text-prose .commentable-text-comment{margin-left:var(--space-2)}.approval-label{font-size:12px;font-weight:500;color:var(--color-text-muted);margin-right:var(--space-2)}.approval-github-write .approval-file-info{display:flex;flex-direction:column;gap:var(--space-2)}.approval-github-write .approval-file-path{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-success-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-sm)}.approval-github-write .approval-file-path-icon{color:var(--color-success-text);font-weight:600;font-size:14px}.approval-github-write .approval-file-path code{font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary)}.approval-github-write .approval-file-branch,.approval-github-write .approval-file-message{display:flex;align-items:baseline;gap:var(--space-2);padding:var(--space-1) 0;font-size:13px}.approval-github-write .approval-file-branch code{font-family:var(--font-mono);padding:var(--space-1) var(--space-2);background:var(--color-bg-secondary);border-radius:var(--radius-sm);font-size:12px}.approval-code-preview{display:flex;flex-direction:column;border:1px solid var(--color-border-default);border-radius:var(--radius-md);overflow:hidden}.approval-code-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border-default);font-size:12px;font-weight:500;color:var(--color-text-secondary)}.approval-code-lines{font-size:11px;color:var(--color-text-muted);font-weight:400}.approval-code-content{max-height:400px;overflow:auto;background:var(--color-bg-primary)}.approval-code-content pre{margin:0;padding:var(--space-3)}.approval-code-content code{font-family:var(--font-mono);font-size:12px;line-height:1.5;color:var(--color-text-primary);white-space:pre;tab-size:2}.approval-field-short,.approval-field-editable{display:flex;flex-direction:column;gap:var(--space-2)}.approval-field-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.approval-field-editable .approval-field-label{width:60px;flex-shrink:0;text-align:left}.approval-field-input{flex:1;padding:var(--space-2);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary)}.approval-field-input:focus{outline:none;border-color:var(--color-accent-primary)}.approval-field-input::placeholder{color:var(--color-text-muted)}.approval-field-input:disabled{opacity:.6;cursor:not-allowed}.approval-field-editable:hover .approval-field-add-comment{opacity:1}.approval-field-add-comment{padding:2px 8px;background:none;border:none;border-radius:var(--radius-sm);font-size:11px;color:var(--color-text-muted);cursor:pointer;opacity:0;transition:all .15s ease}.approval-field-short:hover .approval-field-add-comment{opacity:1}.approval-field-add-comment:hover{color:var(--color-accent-primary);background:var(--color-bg-secondary)}.approval-field-comment-input{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-accent-primary);border-radius:var(--radius-md)}.approval-field-comment-input input{width:100%;padding:var(--space-2);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-family:inherit;font-size:13px;color:var(--color-text-primary)}.approval-field-comment-input input:focus{outline:none;border-color:var(--color-accent-primary)}.approval-field-comment-input input::placeholder{color:var(--color-text-muted)}.approval-field-comment-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.approval-field-comment-actions button{padding:4px 10px;border:none;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;background:transparent;color:var(--color-text-muted)}.approval-field-comment-actions button:hover:not(:disabled){color:var(--color-text-primary)}.approval-field-comment-actions button.primary{background:var(--color-accent-primary);color:#fff}.approval-field-comment-actions button.primary:hover:not(:disabled){opacity:.9}.approval-field-comment-actions button:disabled{opacity:.4;cursor:default}.approval-field-comment{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-sm);font-size:12px}.approval-field-comment-content{flex:1;color:var(--color-text-primary)}.approval-field-comment-edit,.approval-field-comment-remove{padding:2px 6px;border:none;border-radius:var(--radius-sm);background:transparent;font-size:11px;color:var(--color-text-muted);cursor:pointer;opacity:0;transition:all .15s ease}.approval-field-comment:hover .approval-field-comment-edit,.approval-field-comment:hover .approval-field-comment-remove{opacity:1}.approval-field-comment-edit:hover{color:var(--color-accent-primary);background:var(--color-bg-tertiary)}.approval-field-comment-remove:hover{color:#ef4444;background:#ef44441a}.approval-footer{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-default)}.approval-footer-actions{display:flex;justify-content:space-between;align-items:center}.approval-footer-primary-actions{display:flex;gap:var(--space-2)}@media(max-width:767px){.approval-card{gap:var(--space-3)}.approval-header{padding-bottom:var(--space-2)}.approval-title{font-size:14px}.approval-fields{gap:var(--space-3)}.approval-field-value{max-height:150px;font-size:14px}.approval-actions{flex-direction:column-reverse;gap:var(--space-2)}.approval-actions>*{width:100%}.approval-footer-actions{flex-direction:column-reverse;gap:var(--space-3)}.approval-footer-primary-actions{flex-direction:column-reverse;width:100%;gap:var(--space-2)}.approval-footer-primary-actions>*{width:100%}.approval-code-content{max-height:250px}.approval-code-content code{font-size:11px}.approval-field-add-comment,.approval-field-comment-edit,.approval-field-comment-remove{opacity:1}.approval-field-input,.approval-field-comment-input input{font-size:16px}}.email-approval-view{display:flex;flex-direction:column;height:100%;min-height:400px}.email-approval-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-secondary)}.email-approval-header h3{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.email-approval-recipients{display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-primary)}.email-recipient-field{display:flex;flex-direction:column;gap:var(--space-1)}.email-recipient-field+.email-recipient-field{margin-top:var(--space-2)}.email-recipient-row{display:flex;align-items:center;gap:var(--space-2);min-height:28px}.email-recipient-label{width:60px;flex-shrink:0;font-size:12px;font-weight:500;color:var(--color-text-muted);text-align:left}.email-recipient-input{flex:1;padding:var(--space-1) var(--space-2);font-size:13px;font-family:var(--font-mono);color:var(--color-text-primary);background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);transition:border-color .15s,background .15s}.email-recipient-input:hover{background:var(--color-bg-secondary);border-color:var(--color-border-default)}.email-recipient-input:focus{outline:none;background:var(--color-bg-primary);border-color:var(--color-border-focus)}.email-recipient-input:disabled{color:var(--color-text-muted);cursor:not-allowed}.email-recipient-add-comment{padding:2px 8px;font-size:11px;color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity .15s,background .15s}.email-recipient-row:hover .email-recipient-add-comment{opacity:1}.email-recipient-add-comment:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.email-recipient-comment-input{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);margin-left:48px;background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-md)}.email-recipient-comment-input input{padding:var(--space-2);font-size:13px;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm)}.email-recipient-comment-input input:focus{outline:none;border-color:var(--color-border-focus)}.email-recipient-comment-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.email-recipient-comment-actions button{padding:4px 10px;font-size:12px;border-radius:var(--radius-sm);cursor:pointer;border:none}.email-recipient-comment-actions button:first-child{background:transparent;color:var(--color-text-secondary)}.email-recipient-comment-actions button:first-child:hover{background:var(--color-bg-tertiary)}.email-recipient-comment-actions button.primary{background:var(--color-accent-primary);color:#fff;font-weight:500}.email-recipient-comment-actions button.primary:hover:not(:disabled){opacity:.9}.email-recipient-comment-actions button.primary:disabled{opacity:.4;cursor:not-allowed}.email-recipient-comment{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin-left:68px;margin-top:var(--space-1);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-md);font-size:13px;box-shadow:0 1px 2px #0000000d}.email-recipient-comment-content{flex:1;color:var(--color-text-primary)}.email-recipient-comment-edit,.email-recipient-comment-remove{padding:2px 6px;font-size:11px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted)}.email-recipient-comment-edit:hover,.email-recipient-comment-remove:hover{background:var(--color-bg-tertiary);color:var(--color-text-secondary)}.email-approval-subject{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-primary)}.email-approval-subject .email-recipient-input{font-weight:600}.email-approval-body{flex:1;min-height:0;display:flex;flex-direction:column;padding:var(--space-3) var(--space-4);background:var(--color-bg-primary)}.email-approval-body .commentable-text{flex:1;min-height:0;display:flex;flex-direction:column}.email-approval-body .commentable-text-content{flex:1;min-height:0;overflow-y:auto}.email-approval-view .approval-footer{padding:var(--space-3) var(--space-4)}.diff-viewer{display:flex;flex-direction:column;gap:var(--space-2);font-family:var(--font-mono);font-size:12px}.diff-viewer-empty{padding:var(--space-4);text-align:center;color:var(--color-text-muted)}.diff-file{border:1px solid var(--color-border-default);border-radius:var(--border-radius);overflow:hidden}.diff-file.selected{border-color:var(--color-accent-primary)}.diff-file-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.diff-file-header:hover{background:var(--color-bg-tertiary)}.diff-file-toggle{font-size:10px;color:var(--color-text-muted)}.diff-file-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:2px;font-size:11px;font-weight:600}.diff-file-icon.added{background:#22c55e33;color:#22c55e}.diff-file-icon.deleted{background:#ef444433;color:#ef4444}.diff-file-icon.modified{background:#3b82f633;color:#3b82f6}.diff-file-icon.renamed{background:#a855f733;color:#a855f7}.diff-file-path{flex:1;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-file-stats{display:flex;gap:var(--space-2)}.stat-additions{color:#22c55e}.stat-deletions{color:#ef4444}.diff-file-content{border-top:1px solid var(--color-border-default);overflow-x:auto}.diff-hunk{border-bottom:1px solid var(--color-border-default);min-width:fit-content}.diff-hunk:last-child{border-bottom:none}.diff-hunk-header{padding:var(--space-1) var(--space-3);background:var(--color-bg-tertiary);color:var(--color-text-muted);font-size:11px}.diff-hunk-lines{display:flex;flex-direction:column;min-width:fit-content}.diff-line{display:flex;line-height:1.4;min-height:20px}.diff-line:hover{background:#8080801a}.diff-line-number{width:40px;padding:0 var(--space-2);text-align:right;color:var(--color-text-muted);background:var(--color-bg-secondary);-webkit-user-select:none;user-select:none;flex-shrink:0}.diff-line-prefix{width:16px;text-align:center;flex-shrink:0}.diff-line-content{flex:1;padding-right:var(--space-2);white-space:pre-wrap;word-break:break-all}.diff-line-content code{font-family:inherit}.line-addition{background:#22c55e26}.line-addition .diff-line-number{background:#22c55e33;color:#22c55e}.line-addition .diff-line-prefix{color:#22c55e}.line-deletion{background:#ef444426}.line-deletion .diff-line-number{background:#ef444433;color:#ef4444}.line-deletion .diff-line-prefix{color:#ef4444}.line-context{background:var(--color-bg-primary)}.diff-line{position:relative;-webkit-user-select:none;user-select:none}.diff-line.selectable{cursor:pointer}.diff-line.selectable:hover{background:#3b82f614!important}.diff-line.selected{background:#3b82f61f!important}.line-addition.selected,.line-deletion.selected{background:#3b82f62e!important}.diff-line.selected .diff-line-number{background:#3b82f640!important;color:var(--color-text-primary)!important}.diff-line-comment-indicator{width:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--color-text-muted);opacity:0;transition:opacity .15s}.diff-line.selectable:hover .diff-line-comment-indicator{opacity:1}.diff-line-comment-indicator.has-comment{opacity:1;color:var(--color-accent-primary)}.diff-comment-input{margin:var(--space-2) var(--space-3);margin-left:96px;padding:var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-left:3px solid var(--color-accent-primary);border-radius:var(--border-radius);box-shadow:0 2px 8px #0000001f}.diff-comment-textarea{width:100%;padding:var(--space-2);background:transparent;border:none;font-family:inherit;font-size:13px;color:var(--color-text-primary);resize:none;min-height:36px;line-height:1.4}.diff-comment-textarea::placeholder{color:var(--color-text-muted)}.diff-comment-textarea:focus{outline:none}.diff-comment-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-default)}.diff-comment-cancel{padding:4px 10px;border:none;border-radius:var(--border-radius);font-size:12px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .15s}.diff-comment-cancel:hover{color:var(--color-text-primary)}.diff-comment-submit{padding:4px 12px;border:none;border-radius:var(--border-radius);font-size:12px;font-weight:500;background:var(--color-accent-primary);color:#fff;cursor:pointer;transition:opacity .15s}.diff-comment-submit:hover:not(:disabled){opacity:.9}.diff-comment-submit:disabled{opacity:.4;cursor:default}.diff-comment{position:relative;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) var(--space-3);margin-left:96px;padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--border-radius);box-shadow:0 1px 2px #0000000d}.diff-comment-lines{flex-shrink:0;font-size:10px;color:var(--color-text-muted);font-family:var(--font-mono);padding:2px 8px;background:#3b82f61a;border-radius:10px}.diff-comment-content{flex:1;font-size:13px;font-family:inherit;color:var(--color-text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.diff-comment-remove{position:absolute;top:var(--space-2);right:var(--space-2);flex-shrink:0;width:20px;height:20px;padding:0;border:none;border-radius:var(--border-radius);background:transparent;color:var(--color-text-muted);font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:all .15s;display:flex;align-items:center;justify-content:center}.diff-comment:hover .diff-comment-remove{opacity:1}.diff-comment-remove:hover{background:#ef444426;color:#ef4444}.file-tree{display:flex;flex-direction:column;gap:var(--space-2);font-family:var(--font-mono)}.file-tree-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2)}.file-tree-title{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.file-tree-count{font-size:11px;padding:2px 6px;background:var(--color-bg-tertiary);border-radius:10px;color:var(--color-text-muted)}.file-tree-list{display:flex;flex-direction:column}.file-tree-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:transparent;border:none;font-family:inherit;font-size:12px;color:var(--color-text-primary);text-align:left;cursor:pointer;border-radius:var(--border-radius);transition:background var(--transition-fast)}.file-tree-item:hover{background:var(--color-bg-tertiary)}.file-tree-item.selected{background:var(--color-accent-muted)}.file-tree-icon{flex-shrink:0;font-weight:600}.file-tree-icon.added{color:#22c55e}.file-tree-icon.deleted{color:#ef4444}.file-tree-icon.modified{color:#3b82f6}.file-tree-icon.renamed{color:#a855f7}.file-tree-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-tree-stats{display:flex;gap:var(--space-1);font-size:10px}.pr-approval-view{display:flex;flex-direction:column;height:100%;min-height:500px}.pr-approval-header{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-secondary)}.pr-approval-title{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.pr-approval-title-row{display:flex;align-items:center;gap:var(--space-2)}.pr-approval-title h3{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.pr-approval-repo{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--color-text-secondary)}.pr-approval-repo code{font-family:var(--font-mono);padding:2px 6px;background:var(--color-bg-tertiary);border-radius:var(--radius-sm)}.pr-approval-branch-arrow,.pr-approval-branch-into{color:var(--color-text-muted)}.pr-approval-branch{color:var(--color-primary)}.pr-approval-stats{display:flex;gap:var(--space-3);font-family:var(--font-mono);font-size:12px}.pr-approval-stats .stat-files{color:var(--color-text-secondary)}.pr-approval-stats .stat-additions{color:#22c55e}.pr-approval-stats .stat-deletions{color:#ef4444}.pr-approval-content{flex:1;display:flex;overflow:hidden;min-height:0}.pr-approval-content-empty{flex:0;min-height:120px}.pr-approval-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4);color:var(--color-text-muted)}.pr-approval-empty-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-warning-subtle);color:var(--color-warning-text);font-weight:600;font-size:16px}.pr-approval-empty-title{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.pr-approval-empty-message{font-size:12px;color:var(--color-text-muted);text-align:center;max-width:300px}.pr-approval-sidebar{width:220px;border-right:1px solid var(--color-border-default);overflow-y:auto;background:var(--color-bg-secondary)}.pr-approval-diff{flex:1;overflow-y:auto;padding:var(--space-3)}.pr-approval-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border-default);background:var(--color-bg-secondary)}.pr-approval-form{display:flex;flex-direction:column;gap:var(--space-3)}.pr-approval-form-fields{display:flex;flex-direction:column;gap:var(--space-2)}.pr-approval-form-body{display:flex;flex-direction:column;gap:var(--space-1)}.pr-approval-textarea{padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);resize:vertical;min-height:60px}.pr-approval-textarea:focus{outline:none;border-color:var(--color-border-focus)}.pr-approval-textarea:disabled{background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.pr-approval-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.docs-approval-view{display:flex;flex-direction:column;height:100%;min-height:500px}.docs-approval-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-secondary)}.docs-approval-title{display:flex;flex-direction:column;gap:var(--space-2)}.docs-approval-title-row{display:flex;align-items:center;gap:var(--space-2)}.docs-approval-title h3{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.docs-approval-doc-info{display:flex;align-items:center;gap:var(--space-2);font-size:13px}.docs-approval-doc-name{color:var(--color-text-secondary);font-weight:500}.docs-approval-editable-title{display:flex;flex-direction:column;gap:var(--space-2)}.docs-approval-title-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.docs-approval-title-input-row{display:flex;align-items:center;gap:var(--space-2)}.docs-approval-title-input{flex:1;min-width:400px;padding:var(--space-2) var(--space-3);font-size:14px;font-weight:500;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);transition:border-color .15s}.docs-approval-title-input:focus{outline:none;border-color:var(--color-accent-primary)}.docs-approval-title-input:disabled{opacity:.6;cursor:not-allowed}.docs-approval-add-comment{padding:4px 8px;font-size:11px;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:all .15s}.docs-approval-add-comment:hover{color:var(--color-text-primary);border-color:var(--color-text-muted)}.docs-approval-title-comment-input{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-radius:var(--radius-sm)}.docs-approval-title-comment-input input{flex:1;padding:var(--space-1) var(--space-2);font-size:13px;color:var(--color-text-primary);background:transparent;border:none}.docs-approval-title-comment-input input:focus{outline:none}.docs-approval-title-comment-actions{display:flex;gap:var(--space-1)}.docs-approval-title-comment-actions button{padding:4px 8px;font-size:11px;border-radius:var(--radius-sm);cursor:pointer;border:none}.docs-approval-title-comment-actions button:first-child{background:transparent;color:var(--color-text-muted)}.docs-approval-title-comment-actions button:first-child:hover{color:var(--color-text-primary)}.docs-approval-title-comment-actions button.primary{background:var(--color-accent-primary);color:#fff}.docs-approval-title-comment-actions button.primary:disabled{opacity:.4;cursor:default}.docs-approval-title-comment{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-sm);font-size:13px}.docs-approval-title-comment-content{flex:1;color:var(--color-text-primary)}.docs-approval-title-comment-edit,.docs-approval-title-comment-remove{padding:2px 6px;font-size:11px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm)}.docs-approval-title-comment-edit:hover{color:var(--color-accent-primary)}.docs-approval-title-comment-remove:hover{color:#ef4444;background:#ef44441a}.docs-approval-stats{display:flex;gap:var(--space-3);font-size:12px}.docs-approval-stats .stat-current{color:var(--color-text-muted)}.docs-approval-stats .stat-additions{color:#22c55e}.docs-approval-content{flex:1;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;min-height:0}.docs-approval-content-single{grid-template-columns:1fr}.docs-approval-content-single .docs-approval-panel{border-right:none}.docs-approval-content-single .docs-paragraph-content{font-size:15px;line-height:1.7;padding:var(--space-2) var(--space-4)}.docs-approval-content-single .docs-paragraph-added{background:transparent}.docs-approval-content-single .docs-paragraph-added:hover{background:#3b82f60f}.docs-approval-panel{display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--color-border-default)}.docs-approval-panel:last-child{border-right:none}.docs-approval-panel-header{padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border-default);flex-shrink:0}.docs-approval-panel-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.docs-approval-panel-current .docs-approval-panel-header{background:#ef44440d}.docs-approval-panel-after .docs-approval-panel-header{background:#22c55e0d}.docs-approval-panel-after .docs-approval-panel-label{color:#22c55e}.docs-approval-panel-body{flex:1;overflow-y:auto;background:var(--color-bg-primary)}.docs-approval-empty-panel{color:var(--color-text-muted);font-style:italic;font-size:13px;padding:var(--space-4);text-align:center}.docs-paragraph-wrapper{display:flex;flex-direction:column}.docs-paragraph{display:flex;align-items:flex-start;min-height:28px;line-height:1.5;-webkit-user-select:none;user-select:none;cursor:pointer}.docs-paragraph:hover{background:#3b82f60f}.docs-paragraph:hover .docs-comment-indicator.can-comment{opacity:1}.docs-paragraph.selected{background:#3b82f61f}.docs-paragraph-content{flex:1;padding:var(--space-1) var(--space-3);font-family:var(--font-sans);font-size:14px;color:var(--color-text-primary);white-space:pre-wrap;word-wrap:break-word}.docs-comment-indicator{width:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--color-text-muted);opacity:0;transition:opacity .15s}.docs-comment-indicator.has-comment{opacity:1;color:var(--color-accent-primary)}.docs-paragraph-added{background:#22c55e14}.docs-paragraph-added:hover{background:#22c55e24}.docs-paragraph-added .docs-comment-indicator{color:#22c55e}.docs-paragraph-removed{background:#ef444414}.docs-paragraph-removed:hover{background:#ef44441f}.docs-paragraph-removed .docs-paragraph-content{text-decoration:line-through;color:var(--color-text-muted)}.docs-paragraph-removed .docs-comment-indicator{color:#ef4444}.docs-diff-marker{width:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#ef4444}.docs-comment-input{margin:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-left:3px solid var(--color-accent-primary);border-radius:var(--radius-sm);box-shadow:0 2px 8px #0000001f}.docs-comment-input textarea{width:100%;padding:var(--space-2);font-family:var(--font-sans);font-size:13px;line-height:1.4;border:none;background:transparent;color:var(--color-text-primary);resize:none;min-height:48px}.docs-comment-input textarea::placeholder{color:var(--color-text-muted)}.docs-comment-input textarea:focus{outline:none}.docs-comment-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-default)}.docs-comment-actions button{padding:4px 10px;font-size:12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:none}.docs-comment-actions button:first-child{background:transparent;color:var(--color-text-muted)}.docs-comment-actions button:first-child:hover{color:var(--color-text-primary)}.docs-comment-actions button.primary{background:var(--color-accent-primary);color:#fff;font-weight:500}.docs-comment-actions button.primary:hover:not(:disabled){opacity:.9}.docs-comment-actions button.primary:disabled{opacity:.4;cursor:default}.docs-comment{position:relative;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000000d}.docs-comment-paras{flex-shrink:0;font-size:10px;color:var(--color-text-muted);padding:2px 8px;background:#3b82f61a;border-radius:10px;align-self:flex-start}.docs-comment-content{flex:1;font-size:13px;color:var(--color-text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.docs-comment-remove{position:absolute;top:var(--space-2);right:var(--space-2);flex-shrink:0;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;font-size:14px;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease}.docs-comment:hover .docs-comment-remove{opacity:1}.docs-comment-remove:hover{background:#ef444426;color:#ef4444}.docs-approval-view .approval-footer{padding:var(--space-3) var(--space-4)}.sheets-approval-view{display:flex;flex-direction:column;height:100%;min-height:500px}.sheets-approval-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);background:var(--color-bg-secondary)}.sheets-approval-title{display:flex;flex-direction:column;gap:var(--space-2)}.sheets-approval-title-row{display:flex;align-items:center;gap:var(--space-2)}.sheets-approval-title h3{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary)}.sheets-approval-doc-info{display:flex;align-items:center;gap:var(--space-2);font-size:13px}.sheets-approval-doc-name{color:var(--color-text-secondary);font-weight:500}.sheets-approval-sheet-name{color:var(--color-text-muted)}.sheets-approval-editable-title{display:flex;flex-direction:column;gap:var(--space-2);width:450px}.sheets-approval-title-label{font-size:12px;color:var(--color-text-muted);font-weight:500}.sheets-approval-title-input-row{display:flex;align-items:center;gap:var(--space-2)}.sheets-approval-title-input{flex:1;padding:var(--space-2) var(--space-3);font-size:14px;font-weight:500;color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);width:100%}.sheets-approval-title-input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 2px #3b82f626}.sheets-approval-title-input:disabled{opacity:.6;cursor:not-allowed}.sheets-approval-add-comment{padding:4px 8px;font-size:11px;color:var(--color-text-muted);background:transparent;border:none;cursor:pointer;opacity:0;transition:opacity .15s}.sheets-approval-title-input-row:hover .sheets-approval-add-comment{opacity:1}.sheets-approval-add-comment:hover{color:var(--color-accent-primary)}.sheets-approval-title-comment-input{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-left:3px solid var(--color-accent-primary);border-radius:var(--radius-sm)}.sheets-approval-title-comment-input input{width:100%;padding:var(--space-2);font-size:13px;border:none;background:transparent;color:var(--color-text-primary)}.sheets-approval-title-comment-input input:focus{outline:none}.sheets-approval-title-comment-input input::placeholder{color:var(--color-text-muted)}.sheets-approval-title-comment-actions{display:flex;justify-content:flex-end;gap:var(--space-2)}.sheets-approval-title-comment-actions button{padding:4px 10px;font-size:12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:none}.sheets-approval-title-comment-actions button:first-child{background:transparent;color:var(--color-text-muted)}.sheets-approval-title-comment-actions button:first-child:hover{color:var(--color-text-primary)}.sheets-approval-title-comment-actions button.primary{background:var(--color-accent-primary);color:#fff;font-weight:500}.sheets-approval-title-comment-actions button.primary:hover:not(:disabled){opacity:.9}.sheets-approval-title-comment-actions button.primary:disabled{opacity:.4;cursor:default}.sheets-approval-title-comment{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-sm);font-size:13px}.sheets-approval-title-comment-content{flex:1;color:var(--color-text-primary)}.sheets-approval-title-comment-edit,.sheets-approval-title-comment-remove{padding:2px 6px;font-size:11px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;opacity:0;transition:opacity .15s}.sheets-approval-title-comment:hover .sheets-approval-title-comment-edit,.sheets-approval-title-comment:hover .sheets-approval-title-comment-remove{opacity:1}.sheets-approval-title-comment-edit:hover{color:var(--color-accent-primary)}.sheets-approval-title-comment-remove:hover{color:#ef4444}.sheets-approval-stats{display:flex;gap:var(--space-3);font-size:12px}.sheets-approval-stats .stat-current{color:var(--color-text-muted)}.sheets-approval-stats .stat-additions{color:#22c55e}.sheets-approval-stats .stat-deletions{color:#ef4444}.sheets-approval-content{flex:1;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;min-height:0}.sheets-approval-content.single-panel{grid-template-columns:1fr}.sheets-approval-panel{display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--color-border-default)}.sheets-approval-panel:last-child{border-right:none}.sheets-approval-panel-header{padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border-default);flex-shrink:0}.sheets-approval-panel-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.sheets-approval-panel-current .sheets-approval-panel-header{background:#ef44440d}.sheets-approval-panel-after .sheets-approval-panel-header{background:#22c55e0d}.sheets-approval-panel-after .sheets-approval-panel-label{color:#22c55e}.sheets-approval-panel-body{flex:1;overflow:auto;background:var(--color-bg-primary)}.sheets-approval-empty-panel{color:var(--color-text-muted);font-style:italic;font-size:13px;padding:var(--space-4);text-align:center}.sheets-table,.sheets-row-wrapper{display:flex;flex-direction:column}.sheets-row{display:flex;align-items:stretch;min-height:32px;border-bottom:1px solid var(--color-border-default);-webkit-user-select:none;user-select:none;cursor:pointer}.sheets-row:hover{background:#3b82f60f}.sheets-row:hover .sheets-comment-indicator.can-comment{opacity:1}.sheets-row.selected{background:#3b82f61f}.sheets-row-number{width:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--color-text-muted);background:var(--color-bg-tertiary);border-right:1px solid var(--color-border-default)}.sheets-row-cells{flex:1;display:flex;min-width:0}.sheets-cell{flex:1;min-width:80px;max-width:200px;padding:var(--space-2) var(--space-2);font-family:var(--font-mono);font-size:12px;color:var(--color-text-primary);border-right:1px solid var(--color-border-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheets-cell:last-child{border-right:none}.sheets-comment-indicator{width:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--color-text-muted);opacity:0;transition:opacity .15s}.sheets-comment-indicator.has-comment{opacity:1;color:var(--color-accent-primary)}.sheets-row-placeholder{background:var(--color-bg-secondary);opacity:.5;cursor:default}.sheets-row-placeholder:hover{background:var(--color-bg-secondary)}.sheets-row-placeholder .sheets-row-number{color:var(--color-text-muted);opacity:.5}.sheets-row-placeholder .sheets-cell{color:transparent}.sheets-row-added{background:#22c55e14}.sheets-row-added:hover{background:#22c55e24}.sheets-row-added .sheets-comment-indicator{color:#22c55e}.sheets-row-added .sheets-row-number{background:#22c55e1f;color:#22c55e}.sheets-row-removed{background:#ef444414}.sheets-row-removed:hover{background:#ef44441f}.sheets-row-removed .sheets-cell{text-decoration:line-through;color:var(--color-text-muted)}.sheets-row-removed .sheets-row-number{background:#ef44441f;color:#ef4444}.sheets-diff-marker{width:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#ef4444}.sheets-comment-input{margin:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-left:3px solid var(--color-accent-primary);border-radius:var(--radius-sm);box-shadow:0 2px 8px #0000001f}.sheets-comment-input textarea{width:100%;padding:var(--space-2);font-family:var(--font-sans);font-size:13px;line-height:1.4;border:none;background:transparent;color:var(--color-text-primary);resize:none;min-height:48px}.sheets-comment-input textarea::placeholder{color:var(--color-text-muted)}.sheets-comment-input textarea:focus{outline:none}.sheets-comment-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-default)}.sheets-comment-actions button{padding:4px 10px;font-size:12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:none}.sheets-comment-actions button:first-child{background:transparent;color:var(--color-text-muted)}.sheets-comment-actions button:first-child:hover{color:var(--color-text-primary)}.sheets-comment-actions button.primary{background:var(--color-accent-primary);color:#fff;font-weight:500}.sheets-comment-actions button.primary:hover:not(:disabled){opacity:.9}.sheets-comment-actions button.primary:disabled{opacity:.4;cursor:default}.sheets-comment{position:relative;display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) var(--space-3);padding:var(--space-3);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-left:3px solid #3b82f6;border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000000d}.sheets-comment-rows{flex-shrink:0;font-size:10px;color:var(--color-text-muted);padding:2px 8px;background:#3b82f61a;border-radius:10px;align-self:flex-start}.sheets-comment-content{flex:1;font-size:13px;color:var(--color-text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word}.sheets-comment-remove{position:absolute;top:var(--space-2);right:var(--space-2);flex-shrink:0;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;font-size:14px;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease}.sheets-comment:hover .sheets-comment-remove{opacity:1}.sheets-comment-remove:hover{background:#ef444426;color:#ef4444}.sheets-approval-view .approval-footer{padding:var(--space-3) var(--space-4)}.agent-section{padding:var(--space-3);background:var(--color-bg-subtle);border-radius:var(--radius-md);border:1px solid var(--color-border-default)}.agent-section-content{display:flex;align-items:center;gap:var(--space-4)}.agent-run-button{flex-shrink:0;display:inline-flex;align-items:center;gap:var(--space-2)}.agent-spinner{width:14px;height:14px;border:2px solid var(--color-border-default);border-top-color:var(--color-text-secondary);border-radius:50%;animation:agent-spin .8s linear infinite}@keyframes agent-spin{to{transform:rotate(360deg)}}.agent-tools-area{display:flex;flex-direction:column;gap:4px;min-width:0}.agent-sentence{font-size:13px;font-weight:600;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-tools-list{display:flex;flex-wrap:wrap;gap:12px}.agent-tool{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--color-text-secondary)}.agent-tool svg{flex-shrink:0;opacity:.6}.agent-tool-name{font-weight:400}.agent-tools-loading{font-size:11px;color:var(--color-text-muted)}.agent-tools-empty{font-size:11px;color:var(--color-text-muted);font-style:italic}.agent-tool-more{color:var(--color-text-muted);cursor:default}.agent-tool-tooltip{margin-top:-6px;padding:6px 10px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:11px;color:var(--color-text-primary);max-width:250px;box-shadow:0 2px 8px #00000026;z-index:9999;pointer-events:none}.task-modal,.task-modal-form{display:flex;flex-direction:column;gap:var(--space-4)}.task-modal-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-border-default)}.task-modal-footer-right{display:flex;gap:var(--space-2)}.delete-action{display:flex;gap:var(--space-2);overflow:hidden}.delete-action>*{animation:fadeSlideIn .15s ease-out}@keyframes fadeSlideIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.task-modal-error{padding:var(--space-3);margin-bottom:var(--space-3);background:var(--color-danger-subtle);color:var(--color-danger-text);border-radius:var(--radius-sm);font-size:var(--text-sm)}.task-modal-execution{display:flex;flex-direction:column;gap:var(--space-3)}.task-modal-execution-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.task-modal-generating{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm)}.generating-spinner{width:16px;height:16px;border:2px solid var(--color-border-default);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.task-modal-workflow{display:flex;flex-direction:column;gap:var(--space-3)}.workflow-status{display:flex;align-items:center;gap:var(--space-2)}.workflow-status-label{font-size:var(--text-sm);color:var(--color-text-muted)}.workflow-status-value{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;text-transform:capitalize}.workflow-status-value.planning{background:var(--color-info-subtle);color:var(--color-info-text)}.workflow-status-value.draft{background:var(--color-warning-subtle);color:var(--color-warning-text)}.workflow-status-value.approved,.workflow-status-value.executing{background:var(--color-primary-subtle);color:var(--color-primary)}.workflow-status-value.checkpoint{background:var(--color-warning-subtle);color:var(--color-warning-text)}.workflow-status-value.completed{background:var(--color-success-subtle);color:var(--color-success-text)}.workflow-status-value.failed{background:var(--color-danger-subtle);color:var(--color-danger-text)}.workflow-view-btn{margin-left:auto;padding:var(--space-1) var(--space-2);background:none;border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.workflow-view-btn:hover{background:var(--color-bg-subtle);border-color:var(--color-border-emphasis);color:var(--color-text-primary)}.workflow-artifacts{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.workflow-artifact{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);text-decoration:none;color:var(--color-text-primary);transition:all .15s ease}.workflow-artifact:hover{background:var(--color-bg-secondary);border-color:var(--color-primary)}.workflow-artifact-icon{font-size:var(--text-base)}.workflow-artifact-title{font-size:var(--text-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-header{display:flex;justify-content:flex-end}.workflow-dismiss{display:flex;justify-content:flex-end;margin-top:var(--space-2)}.workflow-generating{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4)}.workflow-generating-spinner{width:20px;height:20px;border:2px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin .8s linear infinite}.workflow-generating-text{font-size:13px;color:var(--color-text-muted)}.task-modal.view-execution-review,.task-modal.view-checkpoint-review{height:100%}.checkpoint-review-view{display:flex;flex-direction:column;gap:var(--space-3)}.checkpoint-header{display:flex;align-items:center;gap:var(--space-2)}.checkpoint-icon{font-size:14px;color:#f59e0b}.checkpoint-step-name{font-size:13px;font-weight:500;color:var(--color-text-primary)}.checkpoint-section{display:flex;flex-direction:column;gap:var(--space-1)}.checkpoint-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.checkpoint-artifacts{display:flex;flex-wrap:wrap;gap:var(--space-1)}.checkpoint-artifact{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);text-decoration:none;color:var(--color-text-secondary);font-size:11px;transition:all .15s ease}.checkpoint-artifact:hover{background:var(--color-bg-tertiary);border-color:var(--color-primary);color:var(--color-text-primary)}.checkpoint-artifact svg{flex-shrink:0;width:12px;height:12px}.checkpoint-artifact-title{font-weight:500}.checkpoint-artifact-arrow{color:var(--color-text-muted);font-size:10px}.checkpoint-next-step{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);font-size:11px}.checkpoint-next-name{color:var(--color-text-primary)}.checkpoint-next-server{font-size:10px;padding:1px 4px;background:var(--color-bg-tertiary);border-radius:var(--radius-full);color:var(--color-text-muted)}.checkpoint-action-section{background:var(--color-bg-secondary);border-radius:var(--radius-sm);padding:var(--space-2);border:1px solid var(--color-primary)}.checkpoint-next-action{display:flex;align-items:center;gap:var(--space-2);font-size:13px;font-weight:500;color:var(--color-text-primary)}.checkpoint-action-icon{color:var(--color-primary);font-weight:700}.checkpoint-action-name{color:var(--color-text-primary)}.checkpoint-prepared-content{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-sm);max-height:200px;overflow-y:auto}.checkpoint-content-item{display:flex;flex-direction:column;gap:2px}.checkpoint-content-item+.checkpoint-content-item{padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle)}.checkpoint-content-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted)}.checkpoint-content-value{font-size:12px;font-family:var(--font-mono);color:var(--color-text-secondary);white-space:pre-wrap;line-height:1.4;word-break:break-word}.checkpoint-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-default)}.approval-card{display:flex;flex-direction:column;gap:var(--space-4)}.approval-header{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-default)}.approval-icon{flex-shrink:0;color:var(--color-text-secondary)}.approval-title{font-size:15px;font-weight:600;color:var(--color-text-primary)}.approval-fields{display:flex;flex-direction:column;gap:var(--space-4)}.approval-field{display:flex;flex-direction:column;gap:var(--space-2)}.approval-field-label{font-size:12px;font-weight:500;color:var(--color-text-secondary)}.approval-field-value{padding:var(--space-3);background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:13px;line-height:1.5;color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.approval-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border-default)}@media(max-width:767px){.task-modal,.task-modal-form{gap:var(--space-3)}.task-modal-footer{flex-direction:column-reverse;gap:var(--space-3);padding-top:var(--space-3);padding-bottom:env(safe-area-inset-bottom,var(--space-4))}.task-modal-footer-right{display:flex;width:100%;gap:var(--space-2)}.task-modal-footer-right>*{flex:1}.delete-action{width:100%;order:-1;padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle)}.delete-action>*{width:100%}.workflow-generating{padding:var(--space-4)}.workflow-status{flex-wrap:wrap;gap:var(--space-2)}.workflow-view-btn{width:100%;margin-left:0;margin-top:var(--space-2);text-align:center}.checkpoint-actions{flex-direction:column;gap:var(--space-2)}.checkpoint-actions>*{width:100%}.approval-header{flex-wrap:wrap}.approval-title{font-size:14px}.approval-field-value{max-height:150px;font-size:14px}.approval-actions{flex-direction:column;gap:var(--space-2)}.approval-actions>*{width:100%}.checkpoint-prepared-content{max-height:150px}.checkpoint-artifact{font-size:12px;padding:var(--space-2)}}.task-card{background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-left:3px solid var(--color-accent-primary);border-radius:var(--border-radius);padding:var(--space-3);cursor:grab;transition:all var(--transition-fast)}.task-card:hover{border-color:var(--color-border-focus);box-shadow:var(--shadow-sm)}.task-card.dragging{opacity:.6;cursor:grabbing;box-shadow:var(--shadow-md);transform:rotate(2deg)}.task-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.task-title{flex:1;font-size:13px;font-weight:500;color:var(--color-text-primary);line-height:1.4}.task-description{font-size:12px;color:var(--color-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-context-menu{position:fixed;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);z-index:1000;min-width:140px;padding:var(--space-1) 0}.context-menu-item{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;font-family:var(--font-mono);font-size:12px;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.context-menu-item:hover{background:var(--color-bg-tertiary)}.context-menu-item.danger{color:var(--color-priority-critical)}.context-menu-item.danger:hover{background:#ef44441a}.context-menu-divider{height:1px;background:var(--color-border-default);margin:var(--space-1) 0}@media(max-width:767px){.task-card{padding:var(--space-3) var(--space-4);min-height:48px;cursor:pointer}.task-card:hover{border-color:var(--color-border-default);box-shadow:none}.task-card:active{background:var(--color-bg-tertiary);transform:scale(.98)}.task-card.dragging{opacity:.8;transform:none}.task-title{font-size:14px}.task-description{font-size:13px;-webkit-line-clamp:3}.task-context-menu{position:fixed;inset:auto 0 0;border-radius:var(--border-radius) var(--border-radius) 0 0;padding:var(--space-2) 0 env(safe-area-inset-bottom);max-height:60vh;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.context-menu-item{min-height:48px;padding:var(--space-3) var(--space-4);font-size:15px;display:flex;align-items:center}.context-menu-divider{margin:var(--space-2) 0}}.column{width:var(--column-width);min-width:var(--column-width);background:var(--color-bg-tertiary);border:1px solid var(--color-border-subtle);border-radius:var(--border-radius);display:flex;flex-direction:column;max-height:calc(100vh - var(--header-height) - var(--space-8));transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.column-drag-over{border-color:var(--color-accent-primary);box-shadow:0 0 0 1px var(--color-accent-muted)}.column-drop-target{border-color:var(--color-accent-primary);border-style:dashed}.column[draggable=true]{cursor:grab}.column[draggable=true]:active{cursor:grabbing}.column-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.column-prompt{color:var(--color-text-muted);font-weight:500}.column-name{font-size:13px;font-weight:600;color:var(--color-text-primary)}.column-name{cursor:pointer;padding:2px 4px;margin:-2px -4px;border-radius:var(--border-radius);transition:background var(--transition-fast)}.column-name:hover{background:var(--color-bg-secondary)}.column-name-input{font-size:13px;font-weight:600;font-family:var(--font-mono);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-accent-primary);border-radius:var(--border-radius);padding:2px 4px;margin:-3px -5px;outline:none;min-width:80px;flex:1}.column-count{font-size:12px;color:var(--color-text-muted);background:var(--color-bg-secondary);padding:2px 6px;border-radius:var(--border-radius)}.column-menu-wrapper{position:relative;margin-left:auto}.column-menu-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:var(--border-radius);color:var(--color-text-muted);cursor:pointer;font-size:14px;transition:all var(--transition-fast);opacity:0}.column-header:hover .column-menu-btn,.column-menu-btn:focus{opacity:1}.column-menu-btn:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.column-menu{position:absolute;top:100%;right:0;margin-top:4px;min-width:120px;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-md);z-index:100;padding:var(--space-1)}.column-menu-item{display:block;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:none;border-radius:var(--border-radius);font-family:var(--font-mono);font-size:13px;color:var(--color-text-primary);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.column-menu-item:hover{background:var(--color-bg-secondary)}.column-menu-item-danger{color:var(--color-danger)}.column-menu-item-danger:hover{background:#ef44441a}.column-menu-confirm{padding:var(--space-2)}.column-menu-confirm-text{display:block;font-size:12px;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.column-menu-confirm-actions{display:flex;gap:var(--space-1)}.column-tasks{flex:1;overflow-y:auto;padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.column-add-btn{display:flex;align-items:center;width:100%;padding:var(--space-2) var(--space-3);background:transparent;border:1px dashed var(--color-border-default);border-radius:var(--border-radius);font-family:var(--font-mono);font-size:13px;color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast)}.column-add-btn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary);background:var(--color-accent-muted)}.column-add-form{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--border-radius)}.column-add-actions{display:flex;gap:var(--space-2)}@media(max-width:767px){.column{width:100%;min-width:100%;max-height:calc(100vh - var(--header-height) - var(--space-4));max-height:calc(100dvh - var(--header-height) - var(--space-4))}.column[draggable=true],.column[draggable=true]:active{cursor:default}.column-header{padding:var(--space-3);min-height:var(--touch-target-min)}.column-name{font-size:14px;padding:var(--space-2);margin:calc(-1 * var(--space-2))}.column-name-input{font-size:16px;min-height:var(--touch-target-min)}.column-menu-btn{opacity:1;width:var(--touch-target-min);height:var(--touch-target-min);font-size:18px}.column-menu{min-width:160px}.column-menu-item{min-height:var(--touch-target-min);padding:var(--space-3);font-size:14px}.column-menu-confirm-actions{flex-direction:row;gap:var(--space-2)}.column-menu-confirm-actions .column-menu-item{flex:1;text-align:center}.column-tasks{padding:var(--space-2) var(--space-3);gap:var(--space-3)}.column-add-btn{min-height:var(--touch-target-min);padding:var(--space-3);font-size:14px}.column-add-form{padding:var(--space-3);gap:var(--space-3)}.column-add-actions{gap:var(--space-3)}}.board{flex:1;display:flex;overflow-x:auto;padding:var(--space-4);background:var(--color-bg-secondary)}.board-columns{display:flex;gap:var(--column-gap);align-items:flex-start}.column-wrapper{display:flex}.add-column-btn{display:flex;align-items:flex-start;justify-content:center;width:28px;min-width:28px;padding-top:14px;align-self:stretch;min-height:80px;background:transparent;border:none;border-radius:var(--border-radius);font-family:var(--font-mono);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);opacity:.3}.add-column-btn:hover{opacity:1;color:var(--color-accent-primary);background:var(--color-accent-muted)}.add-column-icon{font-size:16px;line-height:1}.board-loading{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary)}.loading-text{font-size:14px;color:var(--color-text-muted)}.loading-text:after{content:"";animation:dots 1.5s infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.board-empty{flex:1;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary)}.empty-content{text-align:center;max-width:320px}.empty-icon{display:block;font-size:32px;color:var(--color-text-muted);margin-bottom:var(--space-4)}.empty-title{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--space-2)}.empty-text{font-size:14px;color:var(--color-text-muted);line-height:1.5}@media(max-width:767px){.board{padding:var(--space-2) 0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.board::-webkit-scrollbar{display:none}.board-columns{gap:0;padding:0 var(--space-mobile-gutter)}.column-wrapper{flex:0 0 auto;width:var(--mobile-column-width);scroll-snap-align:center;scroll-snap-stop:always;padding:0 var(--space-1)}.add-column-btn{flex:0 0 auto;width:var(--mobile-column-width);min-width:var(--mobile-column-width);min-height:120px;margin-right:var(--space-mobile-gutter);scroll-snap-align:center;opacity:.6;border:2px dashed var(--color-border-default);background:var(--color-bg-tertiary);padding-top:var(--space-6);align-items:flex-start}.add-column-btn:active{opacity:1;background:var(--color-accent-muted);border-color:var(--color-accent-primary)}.add-column-icon{font-size:24px}.board-empty,.board-loading{padding:var(--space-4)}.empty-content{max-width:100%;padding:0 var(--space-4)}}.password-login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-primary);padding:var(--space-4);position:relative}.language-toggle{position:absolute;top:var(--space-4);right:var(--space-4);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast)}.language-toggle:hover{background:var(--bg-tertiary);color:var(--text-primary)}.password-login-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-8);max-width:400px;width:100%;text-align:center}.password-login-header{margin-bottom:var(--space-6)}.password-login-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 var(--space-2) 0;letter-spacing:-.02em}.password-login-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.password-login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--status-error);padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-4)}.password-login-form{display:flex;flex-direction:column;gap:var(--space-3)}.password-login-input{width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);outline:none;transition:border-color var(--transition-fast)}.password-login-input:focus{border-color:var(--accent-primary)}.password-login-input::placeholder{color:var(--text-tertiary)}.password-login-button{width:100%;padding:var(--space-3) var(--space-4);background:var(--accent-primary);border:none;border-radius:var(--radius-md);color:#fff;font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.password-login-button:hover:not(:disabled){background:var(--accent-hover)}.password-login-button:disabled{opacity:.6;cursor:not-allowed}.password-login-footer{margin-top:var(--space-4);font-size:var(--text-xs);color:var(--text-tertiary)}@media(max-width:767px){.password-login-card{padding:var(--space-6)}.password-login-title{font-size:1.5rem}}.mcp-oauth-callback{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg-primary);padding:var(--space-4)}.mcp-oauth-callback-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:400px;padding:var(--space-6);background:var(--color-bg-secondary);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.mcp-oauth-callback-card h2{margin:var(--space-4) 0 var(--space-2);font-size:18px;font-weight:600;color:var(--color-text-primary)}.mcp-oauth-callback-card p{margin:0;font-size:14px;color:var(--color-text-secondary)}.mcp-oauth-spinner{width:40px;height:40px;border:3px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:mcp-oauth-spin .8s linear infinite}@keyframes mcp-oauth-spin{to{transform:rotate(360deg)}}.mcp-oauth-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%}.mcp-oauth-success{background:#22c55e1a;color:#22c55e}.mcp-oauth-error{background:#ef44441a;color:#ef4444}.mcp-oauth-error-message{color:#ef4444!important;margin-bottom:var(--space-4)!important}.mcp-oauth-retry-button{padding:var(--space-2) var(--space-4);background:var(--color-bg-tertiary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);color:var(--color-text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.mcp-oauth-retry-button:hover{background:var(--color-bg-secondary);border-color:var(--color-border-emphasis)}.palette-overlay{position:fixed;inset:0;background:#0006;display:flex;justify-content:center;align-items:flex-start;padding-top:15vh;z-index:1000;animation:fadeIn .1s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.palette{width:100%;max-width:520px;height:fit-content;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);overflow:hidden;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.palette-input-wrapper{display:flex;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-default);gap:var(--space-2)}.palette-prompt{color:var(--color-accent-primary);font-family:var(--font-mono);font-weight:600}.palette-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-mono);font-size:14px;color:var(--color-text-primary)}.palette-input::placeholder{color:var(--color-text-muted)}.palette-results{max-height:320px;overflow-y:auto;overflow-x:hidden}.palette-empty{padding:var(--space-4);text-align:center;color:var(--color-text-muted);font-size:13px}.palette-item{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4);background:transparent;border:none;font-family:var(--font-mono);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.palette-item:hover,.palette-item.selected{background:var(--color-bg-tertiary)}.palette-item.selected{background:var(--color-accent-muted)}.palette-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;background:transparent;overflow:hidden}.palette-item-icon.board,.palette-item-icon.action{color:var(--color-accent-primary)}.palette-item-icon.task{color:var(--color-text-muted)}.palette-item-content{flex:1 1 0%;display:flex;flex-direction:column;gap:2px;min-width:0;overflow:hidden}.palette-item-title{font-size:13px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-item-subtitle{font-size:11px;color:var(--color-text-muted)}.palette-footer{display:flex;gap:var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-bg-secondary);border-top:1px solid var(--color-border-default)}.palette-hint{display:flex;align-items:center;gap:var(--space-1);font-size:11px;color:var(--color-text-muted)}.palette-hint kbd{padding:2px 5px;background:var(--color-bg-primary);border:1px solid var(--color-border-default);border-radius:3px;font-family:var(--font-mono);font-size:10px}@media(max-width:767px){.palette-overlay{padding-top:0;align-items:stretch}.palette{max-width:100%;height:100%;border-radius:0;animation:none;display:flex;flex-direction:column}.palette-input-wrapper{padding:var(--space-4)}.palette-input{font-size:16px}.palette-results{max-height:none;flex:1;overflow-y:auto}.palette-item{padding:var(--space-3) var(--space-4);min-height:48px}.palette-footer{padding:var(--space-3) var(--space-4);padding-bottom:env(safe-area-inset-bottom,var(--space-3))}.palette-hint kbd{display:none}}.toast-container{position:fixed;top:calc(var(--header-height) + var(--space-3));right:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);z-index:50;pointer-events:none}.toast{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-bg-elevated);border:1px solid var(--color-border-default);border-radius:var(--border-radius);box-shadow:0 4px 12px #00000026;min-width:280px;max-width:400px;pointer-events:auto;animation:toast-slide-in .2s ease-out}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.toast-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:600}.toast-message{flex:1;font-size:13px;color:var(--color-text-primary);line-height:1.4}.toast-close{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-muted);font-size:16px;cursor:pointer;border-radius:var(--border-radius-sm);transition:all .15s}.toast-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.toast-success{border-left:3px solid #22c55e}.toast-success .toast-icon{background:#22c55e26;color:#22c55e}.toast-error{border-left:3px solid #ef4444}.toast-error .toast-icon{background:#ef444426;color:#ef4444}.toast-warning{border-left:3px solid #f59e0b}.toast-warning .toast-icon{background:#f59e0b26;color:#f59e0b}.toast-info{border-left:3px solid #3b82f6}.toast-info .toast-icon{background:#3b82f626;color:#3b82f6}.toast-clickable{cursor:pointer}.toast-clickable:hover{background:var(--color-bg-tertiary)}@media(max-width:767px){.toast-container{left:var(--space-mobile-gutter);right:var(--space-mobile-gutter);top:auto;bottom:env(safe-area-inset-bottom,var(--space-4))}.toast{min-width:auto;max-width:none;width:100%}.toast-close{width:var(--touch-target-min);height:var(--touch-target-min)}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}.app{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1;display:flex;overflow:hidden}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);color:var(--color-text-muted);font-family:var(--font-mono)}.app-loading-spinner{width:32px;height:32px;border:3px solid var(--color-border-default);border-top-color:var(--color-accent-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-error{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-6);text-align:center}.app-error h1{font-size:20px;font-weight:600;color:var(--color-text-primary)}.app-error p{color:var(--color-text-muted);font-family:var(--font-mono);font-size:14px}
