:root{--page-bg:#fafaf9;--sidebar-bg:#f5f5f4;--surface:#fff;--surface-hover:#f5f5f4;--surface-muted:#f0efee;--border-color:#e7e5e4;--border-strong:#d6d3d1;--text-primary:#1c1917;--text-secondary:#57534e;--text-tertiary:#a8a29e;--ws-accent:#f97316;--ws-accent-hover:#ea580c;--ws-accent-soft:#fff7ed;--ws-accent-muted:#fed7aa;--ws-success:#16a34a;--ws-danger:#dc2626;--ws-danger-soft:#fef2f2;--panel-shadow:0 1px 2px #1c19170a,0 1px 3px #1c19170f;--sidebar-width:232px;--sidebar-collapsed-width:56px;--titlebar-safe-area:0px;--radius:.5rem;--background:#fafaf9;--foreground:#1c1917;--card:#fff;--card-foreground:#1c1917;--popover:#fff;--popover-foreground:#1c1917;--primary:#f97316;--primary-foreground:#fff;--secondary:#f5f5f4;--secondary-foreground:#1c1917;--muted:#f5f5f4;--muted-foreground:#a8a29e;--accent:#f5f5f4;--accent-foreground:#1c1917;--destructive:#dc2626;--border:#e7e5e4;--input:#e7e5e4;--ring:#f97316}:root[data-theme=dark]{--page-bg:#0f0e0d;--sidebar-bg:#0a0a09;--surface:#1a1918;--surface-hover:#252423;--surface-muted:#121110;--border-color:#2a2928;--border-strong:#3a3938;--text-primary:#ededec;--text-secondary:#9a9990;--text-tertiary:#6b6a64;--ws-accent:#fb923c;--ws-accent-hover:#fdba74;--ws-accent-soft:#f9731614;--ws-accent-muted:#f973162e;--ws-success:#4ade80;--ws-danger:#f87171;--ws-danger-soft:#f8717114;--panel-shadow:0 1px 2px #0003;--background:#0f0e0d;--foreground:#ededec;--card:#1a1918;--card-foreground:#ededec;--popover:#1a1918;--popover-foreground:#ededec;--primary:#fb923c;--primary-foreground:#0c0a09;--secondary:#252423;--secondary-foreground:#ededec;--muted:#252423;--muted-foreground:#6b6a64;--accent:#252423;--accent-foreground:#ededec;--destructive:#f87171;--border:#2a2928;--input:#2a2928;--ring:#fb923c}*,:before,:after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:var(--border-strong)transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}html,body{background:var(--page-bg);min-height:100%;color:var(--text-primary);font-family:var(--font-sans),system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;font-size:13px;line-height:1.5}body{min-height:100vh}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.skeleton{background:linear-gradient(90deg,var(--surface-muted)0%,var(--surface-hover)50%,var(--surface-muted)100%);background-size:200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-list{flex-direction:column;gap:10px;padding:4px;display:flex}.skeleton-list-item{flex-direction:column;gap:6px;padding:8px 10px;display:flex}.skeleton-line{height:12px}.skeleton-line-sm{height:10px}.skeleton-panel-body{flex-direction:column;gap:6px;padding:4px;display:flex}.skeleton-message{background:var(--page-bg);border-radius:6px;padding:8px 10px}.skeleton-message .skeleton{background:linear-gradient(90deg,var(--surface-hover)0%,var(--surface-muted)50%,var(--surface-hover)100%);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}.workspace-loading{background:var(--page-bg);min-height:100vh;display:flex}.workspace-loading-sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;gap:16px;padding:16px 12px;display:flex}.workspace-loading-main{flex-direction:column;flex:1;display:flex}.workspace-loading-header{border-bottom:1px solid var(--border-color);flex-direction:column;gap:6px;padding:16px 20px;display:flex}.workspace-loading-content{flex:1;grid-template-columns:260px 1fr 280px;gap:12px;padding:16px;display:grid}.workspace-loading-panel{background:var(--surface);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.workspace-root{min-height:100vh;padding-top:var(--titlebar-safe-area);display:flex}.workspace-sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--border-color);top:var(--titlebar-safe-area);height:calc(100vh - var(--titlebar-safe-area));flex-direction:column;flex-shrink:0;gap:4px;padding:16px 12px;transition:width .2s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;overflow:hidden}.workspace-sidebar.is-collapsed{width:var(--sidebar-collapsed-width);align-items:center;padding:16px 8px}.sidebar-inner{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex;overflow:hidden}.sidebar-brand{white-space:nowrap;flex-direction:column;gap:1px;padding:4px 8px 16px;display:flex}.workspace-sidebar.is-collapsed .sidebar-brand{align-items:center;padding:4px 0 12px}.sidebar-brand-name{letter-spacing:-.02em;color:var(--text-primary);margin:0;font-size:18px;font-weight:700;line-height:1.2}.sidebar-brand-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin:0;font-size:11px;font-weight:500;transition:opacity .12s}.workspace-sidebar.is-collapsed .sidebar-brand-label{opacity:0;height:0;overflow:hidden}.sidebar-nav{flex-direction:column;gap:2px;padding:4px 0;display:flex}.sidebar-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);white-space:nowrap;margin:0;padding:12px 8px 6px;font-size:11px;font-weight:600;transition:opacity .12s}.workspace-sidebar.is-collapsed .sidebar-section-label{opacity:0;height:0;padding:0;overflow:hidden}.module-nav-item{color:var(--text-secondary);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;transition:background-color .15s,color .15s,transform .1s;display:flex;position:relative}.module-nav-item:hover{background:var(--surface-hover);color:var(--text-primary)}.module-nav-item:active{transform:scale(.97)}.module-nav-item.is-active{background:var(--ws-accent-soft);color:var(--ws-accent-hover)}.module-nav-item.is-active:before{content:"";background:var(--ws-accent);border-radius:0 2px 2px 0;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.workspace-sidebar.is-collapsed .module-nav-item{justify-content:center;padding:10px}.workspace-sidebar.is-collapsed .module-nav-item.is-active:before{width:3px;height:12px;left:0}.module-nav-icon{opacity:.7;flex-shrink:0;width:16px;height:16px}.module-nav-item.is-active .module-nav-icon{opacity:1}.module-nav-label{flex:1;transition:opacity .12s}.module-nav-shortcut{font-family:var(--font-mono),"SF Mono",monospace;color:var(--text-tertiary);opacity:0;margin-left:auto;font-size:10px;transition:opacity .12s}.module-nav-item:hover .module-nav-shortcut{opacity:1}.workspace-sidebar.is-collapsed .module-nav-label,.workspace-sidebar.is-collapsed .module-nav-shortcut{opacity:0;width:0;overflow:hidden}.sidebar-search-trigger{border:1px solid var(--border-color);background:var(--surface-muted);width:100%;color:var(--text-tertiary);cursor:pointer;border-radius:6px;align-items:center;gap:8px;margin-bottom:4px;padding:7px 10px;font-size:12px;transition:border-color .15s,background-color .15s;display:flex}.sidebar-search-trigger:hover{border-color:var(--border-strong);background:var(--surface-hover);color:var(--text-secondary)}.sidebar-search-trigger span{text-align:left;flex:1}.sidebar-search-trigger kbd{font-family:var(--font-mono),"SF Mono",monospace;background:var(--surface);border:1px solid var(--border-color);color:var(--text-tertiary);border-radius:3px;padding:1px 4px;font-size:10px}.sidebar-fav-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:5px 10px;font-size:12px;transition:background-color .12s;display:flex}.sidebar-fav-item:hover{background:var(--surface-hover)}.sidebar-fav-icon{color:var(--ws-accent);opacity:.6;flex-shrink:0}.sidebar-fav-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-fav-remove{opacity:0;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:2px;transition:opacity .12s}.sidebar-fav-item:hover .sidebar-fav-remove{opacity:1}.sidebar-fav-remove:hover{color:var(--ws-danger);background:var(--ws-danger-soft)}.sidebar-recent-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:8px;padding:5px 10px;font-size:12px;transition:background-color .12s;display:flex}.sidebar-recent-item:hover{background:var(--surface-hover)}.sidebar-recent-icon{opacity:.5;flex-shrink:0}.sidebar-recent-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sidebar-recent-badge{text-transform:capitalize;padding:0 4px;font-size:9px}.sidebar-spacer{flex:1}.sidebar-footer{flex-direction:column;gap:8px;padding:8px 0 0;display:flex}.workspace-sidebar.is-collapsed .sidebar-footer{align-items:center}.sidebar-collapse-btn{flex-shrink:0}.theme-toggle{border:1px solid var(--border-color);background:var(--surface-muted);border-radius:6px;display:inline-flex;overflow:hidden}.theme-toggle button{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:5px 10px;transition:background-color .15s,color .15s;display:flex}.theme-toggle button:not(:last-child){border-right:1px solid var(--border-color)}.theme-toggle button:hover{color:var(--text-secondary)}.theme-toggle button.is-active{background:var(--surface);color:var(--text-primary);box-shadow:0 1px 2px #0000000d}.workspace-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.workspace-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:12px 20px;display:flex}[data-tauri-drag-region]{-webkit-app-region:drag}[data-tauri-drag-region] button,[data-tauri-drag-region] select,[data-tauri-drag-region] input,[data-tauri-drag-region] a{-webkit-app-region:no-drag}.header-meta{flex-direction:column;gap:1px;min-width:0;display:flex}.header-meta h2{color:var(--text-primary);margin:0;font-size:14px;font-weight:600;line-height:1.3}.header-meta p{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.workspace-select{border:1px solid var(--border-color);background:var(--surface);min-width:12rem;color:var(--text-primary);cursor:pointer;border-radius:6px;padding:6px 10px;font-size:12px;transition:border-color .15s}.workspace-select:hover{border-color:var(--border-strong)}.workspace-select:focus-visible{outline:2px solid var(--ws-accent);outline-offset:-1px}.workspace-content{flex:1;min-width:0;min-height:0;padding:16px;animation:.2s content-enter}@keyframes content-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.module-grid{height:calc(100vh - 84px - var(--titlebar-safe-area));gap:12px;display:grid}.module-grid-agent,.module-grid-library,.module-grid-kanban{grid-template-columns:260px 1fr 280px}.panel{background:var(--surface);border:1px solid var(--border-color);box-shadow:var(--panel-shadow);border-radius:10px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel-header{border-bottom:1px solid var(--border-color);flex-shrink:0;padding:12px 14px}.panel-header h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary);margin:0;font-size:12px;font-weight:600}.panel-header p{color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono),"SF Mono",monospace;word-break:break-all;margin:3px 0 0}.panel-body{flex:1;min-height:0;padding:8px}.list-scroll{overflow:hidden auto}.panel-footer{border-top:1px solid var(--border-color);flex-shrink:0;gap:6px;padding:10px;display:flex}.list-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:2px;width:100%;margin-bottom:2px;padding:8px 10px;transition:background-color .12s,color .12s,transform .1s;display:flex;position:relative}.list-item:hover{background:var(--surface-hover)}.list-item:active{transform:scale(.98)}.list-item strong{color:var(--text-primary);font-size:12px;font-weight:500;line-height:1.3}.list-item span{color:var(--text-tertiary);font-size:11px}.list-item.is-active{background:var(--ws-accent-soft)}.list-item.is-active strong{color:var(--ws-accent-hover)}.list-item.is-active:before{content:"";background:var(--ws-accent);border-radius:0 2px 2px 0;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.empty-copy{text-align:center;color:var(--text-tertiary);border:1px dashed var(--border-color);border-radius:8px;margin:4px;padding:16px;font-size:12px}.message-row{background:var(--page-bg);border-radius:6px;margin-bottom:4px;padding:8px 10px;transition:background-color .15s}.message-row p{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:4px 0 0;font-size:12px;line-height:1.55}.role-pill{text-transform:uppercase;letter-spacing:.04em;background:var(--surface-muted);color:var(--text-secondary);border-radius:20px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-block}.role-user .role-pill{background:var(--ws-accent-soft);color:var(--ws-accent)}.role-assistant .role-pill{background:color-mix(in srgb,var(--ws-success)10%,transparent);color:var(--ws-success)}.role-tool .role-pill{background:var(--surface-hover);color:var(--text-tertiary)}.approval-card{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;flex-direction:column;gap:6px;margin-bottom:8px;padding:10px 12px;display:flex}.approval-card strong{color:var(--text-primary);font-size:12px;font-weight:600}.approval-card>span{color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono),"SF Mono",monospace}.approval-card pre{font-family:var(--font-mono),"SF Mono",monospace;background:var(--page-bg);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);border-radius:6px;margin:0;padding:8px 10px;font-size:11px;line-height:1.5;overflow-x:auto}.inline-actions{gap:6px;padding-top:2px;display:flex}.split-pane{background:var(--border-color);border-radius:6px;grid-template-columns:.75fr 1fr;gap:1px;height:100%;display:grid;overflow:hidden}.split-list,.split-content{background:var(--surface);min-height:0;padding:8px;overflow-y:auto}.metadata-block{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:12px;display:flex}.metadata-block strong{color:var(--text-primary);font-weight:500}.metadata-block p{font-family:var(--font-mono),"SF Mono",monospace;color:var(--text-tertiary);margin:0;font-size:11px}.context-output{font-family:var(--font-mono),"SF Mono",monospace;background:var(--page-bg);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);border-radius:6px;margin:0;padding:10px 12px;font-size:11px;line-height:1.6;overflow-x:auto}.board-columns{grid-auto-columns:minmax(200px,1fr);grid-auto-flow:column;align-content:start;gap:8px;height:100%;padding:4px;display:grid;overflow-x:auto}.board-column{background:var(--page-bg);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.board-column h4{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border-color);margin:0;padding-bottom:6px;font-size:11px;font-weight:600}.column-stack{flex-direction:column;gap:6px;display:flex}.issue-card{text-align:left;border:1px solid var(--border-color);background:var(--surface);cursor:pointer;border-radius:6px;width:100%;padding:8px 10px;transition:border-color .15s,box-shadow .15s,transform .15s}.issue-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 2px 4px #0000000a}.issue-card:active{transform:translateY(0)scale(.98)}.issue-card.is-active{border-color:var(--ws-accent);box-shadow:0 0 0 1px var(--ws-accent-soft)}.issue-card strong{color:var(--text-tertiary);font-size:10px;font-weight:500;font-family:var(--font-mono),"SF Mono",monospace;display:block}.issue-card p{color:var(--text-primary);margin:3px 0 0;font-size:12px;font-weight:500;line-height:1.35}.issue-detail h4{color:var(--text-primary);margin:0 0 8px;font-size:14px;font-weight:600}.issue-detail h5{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin:16px 0 8px;font-size:11px;font-weight:600}.issue-detail p{color:var(--text-secondary);margin:4px 0;font-size:12px}.issue-detail pre{font-family:var(--font-mono),"SF Mono",monospace;background:var(--page-bg);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);border-radius:6px;margin:8px 0;padding:10px 12px;font-size:11px;line-height:1.5;overflow-x:auto}.comment-item{border:1px solid var(--border-color);background:var(--page-bg);border-radius:6px;margin-bottom:6px;padding:8px 10px}.comment-item strong{color:var(--text-primary);font-size:11px;font-weight:600}.comment-item p{color:var(--text-secondary);margin:3px 0 0;font-size:12px;line-height:1.5}.login-card{border:1px solid var(--border-color);max-width:400px;box-shadow:var(--panel-shadow);background:var(--surface);border-radius:12px;flex-direction:column;gap:16px;margin:48px auto;padding:28px;display:flex}.login-card-header{flex-direction:column;gap:6px;display:flex}.module-chip{background:var(--ws-accent-soft)!important;color:var(--ws-accent)!important;border-color:#0000!important}.login-card header h2{color:var(--text-primary);margin:0;font-size:18px;font-weight:700}.login-card header p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.login-card label,.login-label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:12px;font-weight:500;display:flex}.login-card input,.login-input{border:1px solid var(--border-color);background:var(--page-bg);width:100%;color:var(--text-primary);border-radius:6px;padding:8px 12px;font-size:13px;transition:border-color .15s,box-shadow .15s}.login-card input:focus,.login-input:focus{border-color:var(--ws-accent);box-shadow:0 0 0 2px var(--ws-accent-soft);outline:none}.login-card input::-moz-placeholder{color:var(--text-tertiary)}.login-input::-moz-placeholder{color:var(--text-tertiary)}.login-card input::placeholder,.login-input::placeholder{color:var(--text-tertiary)}.login-card button,.login-submit{background:var(--ws-accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:background-color .15s,opacity .15s,transform .1s}.login-card button:hover,.login-submit:hover{background:var(--ws-accent-hover)}.login-card button:active,.login-submit:active{transform:scale(.98)}.login-card button:disabled,.login-submit:disabled{opacity:.4;cursor:not-allowed}.login-toggle{color:var(--ws-accent);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:12px;font-weight:500}.login-toggle:hover{color:var(--ws-accent-hover);text-decoration:underline}.login-divider{color:var(--text-tertiary);align-items:center;gap:12px;font-size:11px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.login-countdown{color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono),"SF Mono",monospace}.login-field{flex-direction:column;gap:5px;display:flex}.login-form{flex-direction:column;gap:12px;display:flex}.tenant-dropdown{border:1px solid var(--border-color);background:var(--surface);border-radius:6px;overflow:hidden;box-shadow:0 4px 12px #00000014}.tenant-dropdown-item{cursor:pointer;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;transition:background-color .1s;display:flex}.tenant-dropdown-item:hover{background:var(--surface-hover)}.tenant-dropdown-url{font-family:var(--font-mono),"SF Mono",monospace;color:var(--text-tertiary);font-size:11px}.tenant-dropdown-remove{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:11px}.tenant-dropdown-remove:hover{color:var(--ws-danger);background:var(--ws-danger-soft)}.error-text{color:var(--ws-danger);margin:0;font-size:12px;font-weight:500}.connect-banner{border:1px solid var(--ws-accent-muted);background:var(--ws-accent-soft);border-radius:8px;margin-bottom:12px}.connect-banner-header{justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.connect-banner-info{color:var(--ws-accent-hover);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.connect-banner-actions{align-items:center;gap:4px;display:flex}.connect-banner-dismiss{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:3px;padding:2px}.connect-banner-dismiss:hover{color:var(--text-secondary);background:var(--surface-hover)}.connect-banner-form{align-items:center;gap:6px;padding:0 12px 10px;display:flex}.module-placeholder{border:1px dashed var(--border-color);text-align:center;border-radius:10px;max-width:360px;margin:60px auto;padding:32px}.module-placeholder h2{color:var(--text-primary);margin:0 0 8px;font-size:16px;font-weight:600}.module-placeholder p{color:var(--text-tertiary);margin:0;font-size:13px;line-height:1.5}.shortcuts-grid{grid-template-columns:1fr 1fr;gap:20px;padding:4px 0;display:grid}.shortcuts-section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);margin:0 0 8px;font-size:11px;font-weight:600}.shortcuts-list{flex-direction:column;gap:4px;margin:0;display:flex}.shortcut-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.shortcut-label{color:var(--text-secondary);font-size:12px}.shortcut-keys kbd{font-family:var(--font-mono),"SF Mono",monospace;background:var(--surface-muted);border:1px solid var(--border-color);color:var(--text-primary);border-radius:4px;padding:2px 6px;font-size:11px;line-height:1.4;display:inline-block}:focus-visible{outline:2px solid var(--ws-accent);outline-offset:2px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--ws-accent);outline-offset:-1px}@media (max-width:1280px){.module-grid-agent,.module-grid-library,.module-grid-kanban{grid-template-columns:1fr;height:auto}.module-grid{height:auto}.panel{min-height:320px}.workspace-loading-content{grid-template-columns:1fr}}@media (max-width:900px){.workspace-root{flex-direction:column}.workspace-sidebar{border-right:0;border-bottom:1px solid var(--border-color);flex-direction:row;align-items:center;gap:12px;height:auto;padding:10px 16px;position:static;overflow:auto hidden;width:100%!important}.workspace-sidebar .sidebar-inner{flex-direction:row;align-items:center;gap:12px}.sidebar-brand{flex-direction:row;flex-shrink:0;align-items:baseline;gap:8px;padding:0 8px 0 0}.sidebar-brand-label{display:none}.sidebar-nav{flex-direction:row;flex-shrink:0;gap:2px}.sidebar-section-label{display:none}.module-nav-item{white-space:nowrap;padding:6px 10px}.module-nav-label{opacity:1!important;width:auto!important}.module-nav-item.is-active:before{border-radius:2px 2px 0 0;width:16px;height:3px;top:auto;bottom:0;left:50%;transform:translate(-50%)}.sidebar-spacer{display:none}.sidebar-footer{border-top:0;flex-direction:row;margin-top:0;margin-left:auto;padding:0}.sidebar-collapse-btn{display:none}.workspace-header{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 16px}.header-actions{width:100%}.workspace-select{flex:1;min-width:0}.workspace-content{padding:12px}.split-pane{grid-template-columns:1fr}.workspace-loading{flex-direction:column}.workspace-loading-sidebar{border-right:0;border-bottom:1px solid var(--border-color);flex-direction:row;width:100%;padding:10px 16px}.workspace-loading-content{grid-template-columns:1fr}}.agent-layout{height:calc(100vh - 84px - var(--titlebar-safe-area));gap:0;display:flex}.agent-sidebar{border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:280px;min-height:0;display:flex}.agent-main{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.agent-empty-main{flex:1;justify-content:center;align-items:center;display:flex}.agent-error-bar{background:var(--ws-danger-soft);color:var(--ws-danger);border-bottom:1px solid color-mix(in srgb,var(--ws-danger)20%,transparent);padding:8px 16px;font-size:12px;font-weight:500}.conversation-list{flex-direction:column;height:100%;min-height:0;display:flex}.conversation-list-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.conversation-list-header h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary);margin:0;font-size:12px;font-weight:600}.conversation-list-scroll{flex:1;padding:6px 8px;overflow-y:auto}.conversation-group{margin-bottom:4px}.conversation-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);align-items:center;gap:4px;margin:0;padding:8px 8px 4px;font-size:10px;font-weight:600;display:flex}.conversation-item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-direction:column;gap:4px;width:100%;margin-bottom:1px;padding:8px 10px;transition:background-color .12s,transform .1s;display:flex;position:relative}.conversation-item:hover{background:var(--surface-hover)}.conversation-item:active{transform:scale(.98)}.conversation-item.is-active{background:var(--ws-accent-soft)}.conversation-item.is-active:before{content:"";background:var(--ws-accent);border-radius:0 2px 2px 0;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.conversation-item-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.conversation-item-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:12px;font-weight:500;display:flex;overflow:hidden}.conversation-item.is-active .conversation-item-name{color:var(--ws-accent-hover)}.conversation-item-time{color:var(--text-tertiary);flex-shrink:0;font-size:10px}.conversation-status-dot{flex-shrink:0}.conversation-approval-badge{color:var(--ws-accent);border-color:var(--ws-accent-muted);font-size:10px}.conversation-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.conversation-header-left{align-items:center;gap:10px;min-width:0;display:flex}.conversation-header-icon{color:var(--text-tertiary);flex-shrink:0}.conversation-header-info{min-width:0}.conversation-header-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:600;line-height:1.3;overflow:hidden}.conversation-header-meta{gap:4px;margin-top:2px;display:flex}.conversation-header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.conversation-status-badge{align-items:center;gap:4px;font-size:10px;display:inline-flex}.conversation-header-stats{gap:10px;display:flex}.stat-item{color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono),"SF Mono",monospace;align-items:center;gap:3px;display:inline-flex}.transcript-container{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.transcript-scroll{flex-direction:column;flex:1;gap:2px;padding:16px;display:flex;overflow-y:auto}.transcript-empty{color:var(--text-tertiary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.transcript-empty p{color:var(--text-secondary);margin:0;font-weight:500}.transcript-empty span{font-size:12px}.transcript-group{padding:4px 0}.transcript-group-header{color:var(--text-tertiary);align-items:center;gap:6px;padding:4px 0 2px;display:flex}.transcript-group-header.role-user{color:var(--ws-accent)}.transcript-group-header.role-assistant{color:var(--ws-success)}.transcript-group-role{text-transform:capitalize;font-size:11px;font-weight:600}.transcript-group-messages{padding-left:20px}.transcript-group-time{color:var(--text-tertiary);margin-top:2px;padding-left:20px;font-size:10px;display:block}.transcript-message{margin-bottom:2px}.transcript-message-content{color:var(--text-primary);font-size:13px;line-height:1.6}.transcript-message-content p{white-space:pre-wrap;word-break:break-word;margin:0}.transcript-message.is-user .transcript-message-content{background:var(--ws-accent-soft);border-radius:10px 10px 2px;padding:8px 12px}.transcript-message.is-assistant .transcript-message-content{padding:4px 0}.transcript-tool-block{margin:4px 0}.transcript-tool-header{background:var(--surface-muted);color:var(--text-tertiary);cursor:pointer;font-size:11px;font-family:var(--font-mono),"SF Mono",monospace;border:none;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;transition:background-color .12s;display:flex}.transcript-tool-header:hover{background:var(--surface-hover);color:var(--text-secondary)}.transcript-tool-name{font-weight:500}.transcript-tool-result{font-family:var(--font-mono),"SF Mono",monospace;background:var(--page-bg);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);border-radius:4px;max-height:240px;margin:4px 0 0;padding:8px 10px;font-size:11px;line-height:1.5;overflow:auto}.transcript-system{color:var(--text-tertiary);text-align:center;justify-content:center;align-items:center;gap:6px;padding:4px 12px;font-size:11px;display:flex}.transcript-status-banner{border-radius:6px;align-items:center;gap:6px;margin:4px 0;padding:6px 12px;font-size:11px;font-weight:500;display:flex}.transcript-status-banner.is-start{background:color-mix(in srgb,var(--ws-success)8%,transparent);color:var(--ws-success)}.transcript-status-banner.is-exit{background:var(--surface-muted);color:var(--text-secondary)}.transcript-status-banner.is-error{background:var(--ws-danger-soft);color:var(--ws-danger)}.transcript-status-banner.is-info{background:var(--surface-muted);color:var(--text-secondary)}.transcript-new-messages{border:1px solid var(--border-color);background:var(--surface);color:var(--text-primary);cursor:pointer;z-index:10;border-radius:20px;align-items:center;gap:4px;padding:6px 14px;font-size:11px;font-weight:500;transition:background-color .12s;display:flex;position:absolute;bottom:8px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000001a}.transcript-new-messages:hover{background:var(--surface-hover)}.approval-card-inline{border:1px solid var(--border-color);background:var(--surface);border-radius:8px;flex-direction:column;gap:8px;margin:8px 0;padding:12px 14px;transition:border-color .2s;display:flex}.approval-card-inline.is-pending{border-color:var(--ws-accent-muted);box-shadow:0 0 0 1px var(--ws-accent-soft)}.approval-card-inline.is-submitting{opacity:.6;pointer-events:none}.approval-card-header{flex-direction:column;gap:4px;display:flex}.approval-card-type{align-items:center;gap:6px;display:flex}.approval-card-summary{color:var(--text-primary);margin:0;font-size:13px;font-weight:500;line-height:1.4}.approval-detail-toggle{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:2px 0;font-size:11px;display:flex}.approval-detail-toggle:hover{color:var(--text-secondary)}.approval-detail-pre{font-family:var(--font-mono),"SF Mono",monospace;background:var(--page-bg);border:1px solid var(--border-color);white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);border-radius:4px;max-height:200px;margin:0;padding:8px 10px;font-size:11px;line-height:1.5;overflow:auto}.approval-card-actions{justify-content:flex-end;gap:6px;display:flex}.approval-inline-resolved{background:var(--surface-muted);color:var(--text-secondary);border-radius:6px;align-items:center;gap:6px;margin:4px 0;padding:6px 12px;font-size:11px;display:flex}.approval-resolved-icon.is-approved{color:var(--ws-success)}.approval-resolved-icon.is-denied{color:var(--ws-danger)}.approval-resolved-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.agent-input-bar{border-top:1px solid var(--border-color);background:var(--surface);flex-shrink:0;gap:8px;padding:12px 16px;display:flex}.agent-input{flex:1;min-width:0}@media (max-width:900px){.agent-layout{flex-direction:column;height:auto}.agent-sidebar{border-right:0;border-bottom:1px solid var(--border-color);width:100%;height:200px}.agent-main{min-height:400px}.conversation-header-stats{display:none}}.transcript-a2ui-surfaces{border-top:1px solid var(--border-color);background:var(--surface-muted);padding:12px 16px}.new-conversation-dialog{max-width:480px}.new-conversation-agents{flex-direction:column;gap:6px;max-height:200px;margin-bottom:12px;display:flex;overflow-y:auto}.new-conversation-agent-card{border:1px solid var(--border-color);background:var(--surface);cursor:pointer;text-align:left;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.new-conversation-agent-card:hover{background:var(--surface-hover)}.new-conversation-agent-card.is-selected{border-color:var(--ws-accent);background:var(--ws-accent-soft)}.new-conversation-agent-card div{flex-direction:column;gap:2px;display:flex}.new-conversation-agent-card strong{color:var(--text-primary);font-size:13px;font-weight:600}.new-conversation-agent-card span{color:var(--text-secondary);font-size:11px}.new-conversation-empty{text-align:center;color:var(--text-tertiary);padding:16px;font-size:12px}.kanban-layout{flex-direction:column;height:100%;display:flex;overflow:hidden}.kanban-header{border-bottom:1px solid var(--border-color);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.kanban-header-selectors{align-items:center;gap:8px;display:flex}.kanban-project-select,.kanban-board-select{min-width:160px;height:32px;font-size:13px}.kanban-header-actions{align-items:center;gap:10px;display:flex}.kanban-issue-count{color:var(--text-tertiary);font-size:12px}.kanban-filter-bar{border-bottom:1px solid var(--border-color);background:var(--surface-muted);flex-shrink:0;align-items:center;gap:6px;padding:6px 16px;display:flex}.kanban-filter-icon{color:var(--text-tertiary);flex-shrink:0}.kanban-filter-trigger{gap:4px;font-size:12px}.kanban-filter-count{min-width:16px;height:16px;padding:0 4px;font-size:10px}.kanban-filter-popover{width:200px;padding:4px}.kanban-filter-options{flex-direction:column;gap:1px;display:flex}.kanban-filter-option{cursor:pointer;text-align:left;width:100%;color:var(--text-primary);background:0 0;border:none;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.kanban-filter-option:hover{background:var(--surface-hover)}.kanban-filter-option.is-active{background:var(--ws-accent-soft);font-weight:600}.kanban-filter-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.kanban-filter-search{border:1px solid var(--border-color);background:var(--surface);width:160px;height:26px;color:var(--text-primary);border-radius:4px;outline:none;margin-left:auto;padding:0 8px;font-size:12px}.kanban-filter-search:focus{border-color:var(--ws-accent)}.kanban-board-area{flex:1;padding:12px;overflow:auto}.kanban-board{gap:12px;min-height:100%;display:flex}.kanban-board-loading{gap:12px;padding:12px;display:flex}.kanban-column-skeleton{flex-shrink:0;width:260px;padding:12px}.kanban-empty{height:100%;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.kanban-column{background:var(--surface-muted);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;flex-shrink:0;width:280px;min-width:260px;max-height:100%;display:flex}.kanban-column-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.kanban-column-title{color:var(--text-primary);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.kanban-column-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kanban-column-count{height:18px;padding:0 5px;font-size:10px;font-weight:500}.kanban-column-wip-warn{color:var(--ws-danger);text-transform:uppercase;font-size:9px;font-weight:700}.kanban-column-add{cursor:pointer;color:var(--text-tertiary);background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;display:flex}.kanban-column-add:hover{background:var(--surface-hover);color:var(--text-primary)}.kanban-column-cards{flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.kanban-column-empty{color:var(--text-tertiary);text-align:center;padding:16px 0;font-size:11px}.kanban-draggable{touch-action:none}.kanban-draggable.is-dragging{opacity:.3}.kanban-column-cards.is-drag-over{background:var(--ws-accent-soft);outline:2px dashed var(--ws-accent-muted);outline-offset:-2px;border-radius:6px}.kanban-drag-overlay{opacity:.92;pointer-events:none;transform:rotate(2deg);box-shadow:0 8px 24px #1c19171f,0 2px 8px #1c191714}.kanban-issue-card{border:1px solid var(--border-color);background:var(--surface);cursor:pointer;text-align:left;border-radius:6px;flex-direction:column;gap:6px;padding:10px 12px;transition:border-color .15s,box-shadow .15s;display:flex}.kanban-issue-card:hover{border-color:var(--border-strong);box-shadow:var(--panel-shadow)}.kanban-issue-card.is-active{border-color:var(--ws-accent);box-shadow:0 0 0 1px var(--ws-accent)}.kanban-card-top{align-items:center;gap:6px;display:flex}.kanban-card-type-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.kanban-card-key{color:var(--text-tertiary);font-family:monospace;font-size:11px;font-weight:600}.kanban-card-subtask-icon{color:var(--text-tertiary)}.kanban-card-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.kanban-card-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.kanban-card-priority{gap:3px;height:20px;padding:1px 6px;font-size:10px}.kanban-card-due{color:var(--text-tertiary);align-items:center;gap:3px;font-size:10px;display:flex}.kanban-card-due.is-overdue{color:var(--ws-danger);font-weight:600}.kanban-card-spacer{flex:1}.kanban-card-avatar{background:var(--ws-accent-muted);width:22px;height:22px;color:var(--ws-accent);border-radius:50%;justify-content:center;align-items:center;font-size:9px;font-weight:700;display:flex}.kanban-issue-sheet{max-width:90vw;width:440px!important}.kanban-issue-sheet-header{padding-bottom:0}.kanban-issue-sheet-key{color:var(--text-tertiary);align-items:center;gap:6px;font-family:monospace;font-size:12px;font-weight:600;display:flex}.kanban-issue-sheet-body{flex-direction:column;gap:16px;padding:16px 0;display:flex;overflow-y:auto}.kanban-issue-title{color:var(--text-primary);cursor:pointer;border-radius:4px;margin:0;padding:4px 0;font-size:18px;font-weight:700}.kanban-issue-title:hover{background:var(--surface-hover)}.kanban-issue-title-edit{margin:0}.kanban-issue-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.kanban-issue-field{flex-direction:column;gap:4px;display:flex}.kanban-issue-field label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.kanban-issue-select{height:30px;font-size:12px}.kanban-issue-field-value{color:var(--text-primary);padding:4px 0;font-size:13px}.kanban-issue-date-input{height:30px;font-size:12px}.kanban-issue-section{flex-direction:column;gap:8px;display:flex}.kanban-issue-section h4{color:var(--text-primary);align-items:center;gap:6px;margin:0;font-size:13px;font-weight:600;display:flex}.kanban-issue-description{color:var(--text-secondary);white-space:pre-wrap;font-size:13px;line-height:1.6}.kanban-issue-empty-text{color:var(--text-tertiary);font-size:12px;font-style:italic}.kanban-comments-list{flex-direction:column;gap:10px;display:flex}.kanban-comment{background:var(--surface-muted);border:1px solid var(--border-color);border-radius:6px;padding:8px 10px}.kanban-comment-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.kanban-comment-header strong{color:var(--text-primary);font-size:12px}.kanban-comment-header span{color:var(--text-tertiary);font-size:10px}.kanban-comment-body{color:var(--text-secondary);font-size:12px;line-height:1.5}.kanban-comment-form{align-items:center;gap:6px;display:flex}.create-issue-dialog{max-width:480px}.create-issue-form{flex-direction:column;gap:10px;display:flex}.create-issue-row{gap:8px;display:flex}.create-issue-select{flex:1;height:32px;font-size:12px}.kanban-manage-dialog{max-width:500px}.kanban-settings-dialog{max-width:540px}.kanban-manage-form{flex-direction:column;gap:14px;display:flex}.kanban-manage-field{flex-direction:column;gap:4px;display:flex}.kanban-manage-field label{color:var(--text-secondary);align-items:baseline;gap:6px;font-size:12px;font-weight:500;display:flex}.kanban-manage-hint{color:var(--text-tertiary);font-size:11px;font-weight:400}.kanban-manage-error{color:var(--ws-danger);font-size:11px}.kanban-manage-select{height:32px;font-size:13px}.kanban-manage-checkbox-field{align-items:center;gap:8px;display:flex}.kanban-manage-checkbox-field label{color:var(--text-primary);cursor:pointer;font-size:13px}.kanban-manage-switch-field{background:var(--surface-muted);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.kanban-manage-switch-label{flex-direction:column;gap:2px;display:flex}.kanban-manage-switch-label label{color:var(--text-primary);font-size:13px;font-weight:500}.kanban-manage-switch-label .kanban-manage-hint{display:block}.kanban-settings-configs{border-top:1px solid var(--border-color);flex-direction:column;gap:12px;padding-top:4px;display:flex}.kanban-settings-config-section{flex-direction:column;gap:4px;display:flex}.kanban-settings-config-list{flex-wrap:wrap;gap:4px;display:flex}.kanban-settings-config-tag{color:var(--text-secondary);background:var(--surface-muted);border:1px solid var(--border-color);border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.kanban-settings-config-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.kanban-settings-subtask-badge{background:var(--ws-accent-soft);color:var(--ws-accent);border-radius:3px;padding:0 4px;font-size:9px;font-weight:500}.kanban-select-action{color:var(--ws-accent);font-size:12px}.kanban-select-action svg{vertical-align:-1px;margin-right:2px;display:inline}.kanban-settings-btn{width:28px;height:28px;color:var(--text-tertiary)}.kanban-settings-btn:hover{color:var(--text-primary)}.kanban-new-board-btn{gap:4px;height:32px;font-size:12px}@media (max-width:900px){.kanban-header{flex-wrap:wrap}.kanban-filter-bar{flex-wrap:wrap;gap:4px}.kanban-filter-search{width:100%;margin-left:0}.kanban-board{flex-direction:column;gap:16px}.kanban-column{width:100%;min-width:0;max-height:none}.kanban-issue-sheet{max-width:100vw;width:100%!important}}.library-layout{flex-direction:column;height:100%;display:flex;overflow:hidden}.library-tabs{border-bottom:1px solid var(--border-color);background:var(--surface);flex-shrink:0;padding:8px 16px 0}.library-tabs-list{gap:4px}.library-documents{flex:1;display:flex;overflow:hidden}.library-sidebar{border-right:1px solid var(--border-color);flex-shrink:0;width:280px;min-width:240px;max-width:360px;overflow-y:auto}.library-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.library-empty-main{height:100%;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.library-tree{flex-direction:column;height:100%;display:flex}.library-tree-search{border-bottom:1px solid var(--border-color);color:var(--text-tertiary);align-items:center;gap:6px;padding:8px 12px;display:flex}.library-tree-search-input{height:28px;box-shadow:none;background:0 0;border:none;padding:0;font-size:12px}.library-tree-actions{border-bottom:1px solid var(--border-color);gap:4px;padding:6px 12px;display:flex}.library-tree-list{flex:1;padding:4px 0;overflow-y:auto}.library-tree-section-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:6px 12px 2px;font-size:10px;font-weight:700}.library-tree-empty{color:var(--text-tertiary);flex-direction:column;align-items:center;gap:4px;padding:24px;font-size:12px;display:flex}.tree-node{cursor:pointer;width:100%;color:var(--text-primary);text-align:left;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:4px 12px;font-size:13px;display:flex}.tree-node:hover{background:var(--surface-hover)}.tree-node.is-active{background:var(--ws-accent-soft);font-weight:600}.tree-node-expand{width:16px;color:var(--text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.tree-node-icon{color:var(--text-tertiary);flex-shrink:0;display:flex}.tree-node-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.tree-node-pin{color:var(--ws-accent);flex-shrink:0}.library-editor{flex-direction:column;height:100%;display:flex;overflow:hidden}.library-editor-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.library-breadcrumb-link{cursor:pointer;font-size:12px}.library-editor-actions{align-items:center;gap:8px;display:flex}.library-save-status{color:var(--text-tertiary);align-items:center;gap:4px;font-size:11px;display:flex}.library-editor-body{flex:1;max-width:800px;padding:24px 32px;overflow-y:auto}.library-editor-title{width:100%;color:var(--text-primary);background:0 0;border:none;outline:none;margin-bottom:16px;padding:0;font-size:28px;font-weight:700}.library-editor-title::placeholder{color:var(--text-tertiary)}.library-editor-content{width:100%;min-height:400px;color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:14px;line-height:1.7}.library-editor-content::placeholder{color:var(--text-tertiary)}.library-revisions-sheet{max-width:90vw;width:380px!important}.library-revisions-list{flex-direction:column;gap:8px;padding-top:12px;display:flex}.library-revision-item{border:1px solid var(--border-color);background:var(--surface);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.library-revision-info{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.library-revision-title{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.library-revision-date{color:var(--text-tertiary);white-space:nowrap;font-size:10px}.library-revisions-empty{text-align:center;color:var(--text-tertiary);padding:16px;font-size:12px}.memory-viewer{flex:1;display:flex;overflow:hidden}.memory-sessions{border-right:1px solid var(--border-color);width:260px;padding:8px;overflow-y:auto}.memory-section-title{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;padding:4px;font-size:11px;font-weight:700}.memory-agent-group{margin-bottom:12px}.memory-agent-label{color:var(--text-secondary);align-items:center;gap:4px;margin-bottom:2px;padding:4px;font-size:11px;font-weight:600;display:flex}.memory-session-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;flex-direction:column;gap:2px;width:100%;padding:6px 8px;font-size:12px;display:flex}.memory-session-item:hover{background:var(--surface-hover)}.memory-session-item.is-active{background:var(--ws-accent-soft)}.memory-session-item strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.memory-session-item span{align-items:center;gap:6px;display:flex}.memory-msg-count{color:var(--text-tertiary);font-size:10px}.memory-detail{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex;overflow-y:auto}.memory-summary-card{border:1px solid var(--ws-accent-muted);background:var(--ws-accent-soft);border-radius:8px;padding:12px}.memory-summary-card h5{color:var(--ws-accent);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.memory-summary-card p{color:var(--text-primary);margin:0;font-size:13px;line-height:1.5}.memory-messages{flex-direction:column;gap:6px;display:flex}.memory-message{border:1px solid var(--border-color);border-radius:6px;padding:6px 10px}.memory-message.role-user{background:var(--ws-accent-soft);border-color:var(--ws-accent-muted)}.memory-message.role-assistant{background:var(--surface)}.memory-message.role-system{background:var(--surface-muted)}.memory-message.role-tool{background:var(--surface-muted);font-family:monospace}.memory-message-role{color:var(--text-tertiary);text-transform:uppercase;align-items:center;gap:4px;margin-bottom:2px;font-size:10px;font-weight:600;display:flex}.memory-message-content{color:var(--text-primary);white-space:pre-wrap;margin:0;font-size:12px;line-height:1.5}.memory-empty{text-align:center;color:var(--text-tertiary);padding:24px;font-size:12px}@media (max-width:900px){.library-documents{flex-direction:column}.library-sidebar{border-right:0;border-bottom:1px solid var(--border-color);width:100%;max-width:none;height:200px}.memory-viewer{flex-direction:column}.memory-sessions{border-right:0;border-bottom:1px solid var(--border-color);width:100%;height:180px}.library-editor-body{padding:16px}.library-revisions-sheet{max-width:100vw;width:100%!important}}.status-badge{white-space:nowrap;border:1px solid;border-radius:10px;align-items:center;gap:4px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-flex}.status-badge-dot{border-radius:50%;width:6px;height:6px}.priority-badge{border:1px solid var(--border-color);white-space:nowrap;border-radius:8px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;font-weight:600;display:inline-flex}.priority-badge.is-none{color:var(--text-tertiary)}.error-boundary{text-align:center;color:var(--ws-danger);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:32px;display:flex}.error-boundary h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.error-boundary p{color:var(--text-secondary);max-width:400px;margin:0;font-size:13px}.error-boundary-retry{border:1px solid var(--border-color);background:var(--surface);cursor:pointer;color:var(--text-primary);border-radius:6px;align-items:center;gap:4px;margin-top:4px;padding:6px 12px;font-size:12px;font-weight:500;display:flex}.error-boundary-retry:hover{background:var(--surface-hover)}.peek-preview-dialog{overflow:hidden;border:1px solid var(--border-color)!important;background:var(--surface)!important;border-radius:12px!important;gap:0!important;max-width:400px!important;padding:0!important;box-shadow:0 4px 24px #1c19171a,0 1px 4px #1c19170f!important}.peek-preview-card{padding:16px}.peek-content{flex-direction:column;gap:12px;display:flex}.peek-content-header{flex-direction:column;gap:4px;display:flex}.peek-content-key{font-family:var(--font-mono),"SF Mono",monospace;color:var(--text-tertiary);letter-spacing:.02em;font-size:11px;font-weight:500}.peek-content-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:600;line-height:1.35}.peek-content-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.peek-content-type{background:var(--surface-muted);border-radius:4px;padding:2px 8px;font-size:11px;font-weight:500}.peek-content-meta{flex-wrap:wrap;gap:12px;display:flex}.peek-content-field{color:var(--text-secondary);align-items:center;gap:4px;font-size:12px;display:flex}.peek-content-field svg{color:var(--text-tertiary);flex-shrink:0}.peek-content-field.is-overdue,.peek-content-field.is-overdue svg{color:var(--ws-danger)}.peek-content-description{color:var(--text-secondary);background:var(--page-bg);border:1px solid var(--border-color);border-radius:6px;margin:0;padding:8px 10px;font-size:12px;line-height:1.5}.peek-content-hint{color:var(--text-tertiary);text-align:center;margin:0;font-size:11px}.peek-content-hint kbd{font-size:10px;font-family:var(--font-mono),"SF Mono",monospace;background:var(--surface-muted);border:1px solid var(--border-color);border-radius:3px;padding:1px 5px;display:inline-block}
