:root,[data-theme=dark]{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a26;--bg-elevated:#22222e;--bg-hover:#2a2a38;--bg-active:#32323f;--surface-card:#14141e;--surface-modal:#1a1a26;--surface-input:#12121a;--text-primary:#e8e8ed;--text-secondary:#a0a0b0;--text-tertiary:#6a6a7a;--text-inverse:#0a0a0f;--text-on-accent:#fff;--border-subtle:#2a2a38;--border-default:#3a3a48;--border-strong:#4a4a58;--accent-primary:#6c5ce7;--accent-primary-hover:#7c6cf7;--accent-primary-bg:#6c5ce71f;--accent-secondary:#00cec9;--accent-secondary-bg:#00cec91f;--status-success:#00b894;--status-success-bg:#00b8941f;--status-warning:#fdcb6e;--status-warning-bg:#fdcb6e1f;--status-error:#ff7675;--status-error-bg:#ff76751f;--status-info:#74b9ff;--status-info-bg:#74b9ff1f;--chat-user-bg:#6c5ce7;--chat-user-text:#fff;--chat-assistant-bg:#1a1a26;--chat-assistant-text:#e8e8ed;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--sidebar-width:260px;--header-height:56px;--mobile-nav-height:60px;--transition-fast:.15s ease;--transition-normal:.25s ease;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Oswald", sans-serif;--font-mono:"JetBrains Mono", monospace;--gradient-brand:linear-gradient(135deg, #6c5ce7, #00cec9);--gradient-brand-wide:linear-gradient(90deg, #6c5ce7, #00cec9, #6c5ce7);--gradient-hero:linear-gradient(135deg, #0a0a1a 0%, #1a0a2e 50%, #0a1a1e 100%);--glow-accent:0 0 20px #6c5ce74d;--glow-success:0 0 12px #00b89466;--glow-cyan:0 0 12px #00cec94d;--terminal-bg:#0d1117;--terminal-header-bg:#161b22;--terminal-text:#39d353;--terminal-text-secondary:#c9d1d9;--terminal-border:#30363d;--terminal-connected:#3fb950;--terminal-disconnected:#f85149;--scrollbar-bg:transparent;--scrollbar-thumb:#3a3a48}[data-theme=light]{--bg-primary:#f5f5f8;--bg-secondary:#fff;--bg-tertiary:#eeeef2;--bg-elevated:#fff;--bg-hover:#e8e8ed;--bg-active:#dddde5;--surface-card:#fff;--surface-modal:#fff;--surface-input:#f5f5f8;--text-primary:#1a1a2e;--text-secondary:#5a5a6e;--text-tertiary:#8a8a9e;--text-inverse:#fff;--text-on-accent:#fff;--border-subtle:#e0e0e8;--border-default:#d0d0d8;--border-strong:#b0b0b8;--accent-primary:#6c5ce7;--accent-primary-hover:#5a4bd4;--accent-primary-bg:#6c5ce714;--accent-secondary:#00b5b0;--accent-secondary-bg:#00b5b014;--status-success:#00a884;--status-success-bg:#00a88414;--status-warning:#e6a800;--status-warning-bg:#e6a80014;--status-error:#e74c3c;--status-error-bg:#e74c3c14;--status-info:#3498db;--status-info-bg:#3498db14;--chat-user-bg:#6c5ce7;--chat-user-text:#fff;--chat-assistant-bg:#fff;--chat-assistant-text:#1a1a2e;--shadow-sm:0 1px 3px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #0000001f;--terminal-bg:#0d1117;--terminal-header-bg:#161b22;--terminal-text:#39d353;--terminal-text-secondary:#c9d1d9;--terminal-border:#30363d;--terminal-connected:#3fb950;--terminal-disconnected:#f85149;--scrollbar-bg:transparent;--scrollbar-thumb:#d0d0d8}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;overflow:hidden}#root{min-height:100vh}a{color:var(--accent-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--transition-fast);outline:none;padding:8px 12px}input:focus,textarea:focus,select:focus{border-color:var(--accent-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-bg)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 4px var(--status-success)}50%{box-shadow:var(--glow-success)}}@keyframes gradientShift{0%{background-position:0%}to{background-position:200%}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes spinGlow{0%{border-top-color:var(--accent-primary);filter:drop-shadow(0 0 2px var(--accent-primary))}33%{border-top-color:var(--accent-secondary);filter:drop-shadow(0 0 2px var(--accent-secondary))}66%{border-top-color:var(--status-success);filter:drop-shadow(0 0 2px var(--status-success))}to{border-top-color:var(--accent-primary);filter:drop-shadow(0 0 2px var(--accent-primary))}}.gradient-text{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.auth-overlay{background:var(--bg-primary);z-index:2000;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.auth-card{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-lg);padding:40px 32px}.auth-header{text-align:center;margin-bottom:32px}.auth-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:28px;font-weight:700}.auth-subtitle{color:var(--text-secondary);font-size:14px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-input{width:100%;font-family:var(--font-mono);background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 16px;font-size:14px}.auth-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-bg)}.auth-error{color:var(--status-error);text-align:center;font-size:13px}.auth-submit{background:var(--accent-primary);width:100%;color:var(--text-on-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:12px;font-size:14px;font-weight:600}.auth-submit:hover:not(:disabled){background:var(--accent-primary-hover)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.spinner{justify-content:center;align-items:center;display:inline-flex}.spinner-ring{border:2px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;width:100%;height:100%;animation:.8s linear infinite spin,3s ease-in-out infinite spinGlow}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-fullpage{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100vh;display:flex}.spinner-fullpage .spinner-ring{border-width:3px;width:32px;height:32px}.claude-auth-overlay{z-index:1500;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.claude-auth-box{border-radius:var(--radius-xl);background:var(--surface-modal);border:1px solid var(--border-subtle);width:90%;max-width:480px;box-shadow:var(--shadow-lg);padding:40px}.claude-auth-icon{text-align:center;margin-bottom:12px;font-size:2.5rem}.claude-auth-title{color:var(--accent-primary);text-align:center;margin-bottom:8px;font-size:1.2rem;font-weight:700}.claude-auth-desc{color:var(--text-secondary);text-align:center;margin-bottom:6px;font-size:.9rem}.claude-auth-note{color:var(--text-secondary);text-align:center;opacity:.7;margin-bottom:24px;font-size:.8rem}.claude-auth-btn{background:var(--accent-primary);width:100%;color:var(--text-on-accent);border-radius:var(--radius-md);cursor:pointer;text-align:center;border:none;padding:14px;font-size:.95rem;font-weight:600;text-decoration:none;transition:opacity .2s;display:block}.claude-auth-btn:hover:not(:disabled){opacity:.9}.claude-auth-btn:disabled{opacity:.5;cursor:not-allowed}.claude-auth-btn.secondary{border:1px solid var(--border-default);color:var(--text-secondary);background:0 0;margin-top:8px}.claude-auth-link-btn{background:var(--accent-secondary,#6b5ce7);color:#fff;margin-bottom:4px}.claude-auth-status{text-align:center;color:var(--text-secondary);min-height:1.2em;margin:12px 0;font-size:.85rem}.claude-auth-error{color:var(--status-error);text-align:center;margin-top:8px;font-size:.85rem}.claude-auth-success{color:var(--status-success);text-align:center;font-size:.95rem;font-weight:600}.claude-auth-code-section{text-align:left;margin-top:20px}.claude-auth-code-label{color:var(--text-secondary);margin-bottom:6px;font-size:.85rem}.claude-auth-code-row{gap:8px;display:flex}.claude-auth-code-input{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);flex:1;padding:10px 12px;font-family:monospace;font-size:.85rem}.claude-auth-code-input:focus{border-color:var(--accent-primary);outline:none}.claude-auth-code-submit{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 16px;font-weight:600}.claude-auth-code-submit:disabled{opacity:.5;cursor:not-allowed}.claude-auth-spinner{border:2px solid var(--border-default);border-top-color:var(--accent-primary);vertical-align:middle;border-radius:50%;width:16px;height:16px;margin-right:8px;animation:.8s linear infinite spin;display:inline-block}.status-badge{align-items:center;gap:6px;font-size:12px;font-weight:500;display:inline-flex}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-online .status-dot{background:var(--status-success);animation:2s ease-in-out infinite pulseGlow}.status-offline .status-dot{background:var(--text-tertiary)}.status-busy .status-dot{background:var(--status-warning);box-shadow:0 0 6px var(--status-warning)}.status-idle .status-dot{background:var(--text-tertiary)}.status-label{color:var(--text-secondary)}.header{height:var(--header-height);background:var(--bg-secondary);border-bottom:2px solid #0000;border-image:var(--gradient-brand) 1;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.header-left{align-items:baseline;gap:8px;display:flex}.header-brand-link{text-decoration:none!important}.header-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1px;background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:600}.header-subtitle{color:var(--text-tertiary);font-size:13px;font-weight:500}.header-right{align-items:center;gap:12px;display:flex}.header-ctx-link{transition:transform var(--transition-fast);cursor:pointer;border-radius:50%;align-items:center;text-decoration:none;display:flex}.header-ctx-link:hover{transform:scale(1.15)}.header-ctx-ring{display:block}.header-ctx-ring-text{font-family:var(--font-mono);font-size:8px;font-weight:700}@media (width<=768px){.header{padding:0 12px}}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 8px;display:flex}.sidebar-link{border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar-link:hover{background:var(--bg-hover);color:var(--text-primary);text-decoration:none}.sidebar-link-active{background:var(--accent-primary-bg);color:var(--accent-primary);border-left:3px solid var(--accent-primary);padding-left:11px}.sidebar-link-active:hover{background:var(--accent-primary-bg);color:var(--accent-primary)}.sidebar-icon{text-align:center;flex-shrink:0;width:24px;font-size:18px}.sidebar-label{flex:1}.sidebar-badge{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-full);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;display:flex}.sidebar-footer{border-top:1px solid var(--border-subtle);flex-direction:column;gap:4px;padding:12px 16px;display:flex}.sidebar-powered{color:var(--text-tertiary);transition:color var(--transition-fast);font-size:11px;text-decoration:none}.sidebar-powered:hover{color:var(--accent-primary);text-decoration:none}.sidebar-powered strong{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sidebar-blog-link{color:var(--text-tertiary);font-size:11px;text-decoration:none}.sidebar-blog-link:hover{color:var(--accent-secondary);text-decoration:none}@media (width<=768px){.sidebar{display:none}}.mobile-nav{height:var(--mobile-nav-height);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);z-index:100;display:none;position:fixed;bottom:0;left:0;right:0}@media (width<=768px){.mobile-nav{justify-content:space-around;align-items:center;display:flex}}.mobile-nav-item{color:var(--text-tertiary);transition:color var(--transition-fast);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:8px 16px;font-size:10px;font-weight:500;text-decoration:none;display:flex}.mobile-nav-item:hover{text-decoration:none}.mobile-nav-active{color:var(--accent-primary)}.mobile-nav-icon{font-size:22px;line-height:1;position:relative}.mobile-nav-badge{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-full);justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;display:flex;position:absolute;top:-4px;right:-8px}.mobile-nav-label{line-height:1}.mobile-nav-more-btn{font-family:var(--font-sans)}.mobile-more-overlay{z-index:98;background:#00000080;animation:.15s ease-out mobile-fade-in;display:none;position:fixed;inset:0}@media (width<=768px){.mobile-more-overlay{display:block}}.mobile-more-sheet{bottom:var(--mobile-nav-height);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);z-index:99;border-radius:16px 16px 0 0;padding:8px 16px 16px;animation:.2s ease-out mobile-slide-up;display:none;position:fixed;left:0;right:0}@media (width<=768px){.mobile-more-sheet{display:block}}.mobile-more-handle{background:var(--border-subtle);border-radius:2px;width:36px;height:4px;margin:0 auto 12px}.mobile-more-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.mobile-more-item{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;align-items:center;gap:6px;padding:12px 8px;display:flex}.mobile-more-item:hover,.mobile-more-item:active{background:var(--bg-tertiary);border-color:var(--accent-primary);transform:scale(.97)}.mobile-more-icon{font-size:24px;line-height:1}.mobile-more-label{color:var(--text-secondary);text-align:center;font-size:11px;font-weight:500;line-height:1.2}@keyframes mobile-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes mobile-fade-in{0%{opacity:0}to{opacity:1}}.app-shell{flex-direction:column;height:100vh;display:flex;overflow:hidden}.app-body{flex:1;display:flex;overflow:hidden}.app-main{flex:1;overflow:hidden auto}@media (width<=768px){.app-main{padding-bottom:var(--mobile-nav-height)}}.msg-row{justify-content:flex-start;padding:2px 0;animation:.2s ease-out fadeSlideUp;display:flex}.msg-row-user{justify-content:flex-end}.msg-row-highlight .msg-bubble{outline:2px solid var(--accent-primary);outline-offset:2px}.msg-bubble{border-radius:var(--radius-lg);word-break:break-word;min-width:60px;max-width:85%;padding:10px 14px;position:relative}.msg-user{background:var(--chat-user-bg);color:var(--chat-user-text);border-bottom-right-radius:var(--radius-sm)}.msg-assistant{background:var(--chat-assistant-bg);color:var(--chat-assistant-text);border:1px solid var(--border-subtle);border-bottom-left-radius:var(--radius-sm)}.msg-content{font-size:14px;line-height:1.6}.msg-content p{margin:0}.msg-content p+p{margin-top:8px}.msg-content ul,.msg-content ol{margin:8px 0;padding-left:20px}.msg-content a{color:inherit;opacity:.9;text-decoration:underline}.msg-code-block{border-radius:var(--radius-sm);font-family:var(--font-mono);background:#0003;margin:8px 0;padding:8px 12px;font-size:13px;line-height:1.4;overflow-x:auto}.msg-assistant .msg-code-block{background:var(--bg-primary);border:1px solid var(--border-subtle)}.msg-code-inline{font-family:var(--font-mono);background:#00000026;border-radius:3px;padding:1px 4px;font-size:13px}.msg-assistant .msg-code-inline{background:var(--bg-primary)}.msg-reaction-badges{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.msg-reaction-badge{border-radius:var(--radius-full);background:var(--bg-hover);border:1px solid var(--border-subtle);align-items:center;gap:3px;padding:2px 6px;font-size:13px;display:inline-flex}.msg-reaction-score{color:var(--accent-primary);font-size:11px;font-weight:600}.msg-meta{justify-content:flex-end;margin-top:4px;display:flex}.msg-time{opacity:.6;font-size:11px}.msg-actions{border-top:1px solid var(--border-subtle);align-items:center;gap:4px;margin-top:6px;padding-top:4px;display:flex}.msg-bookmark-btn{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);box-shadow:var(--shadow-md);padding:2px 4px;font-size:14px;line-height:1}.msg-bookmark-btn:hover{background:var(--bg-hover)}.msg-bookmark-active{color:var(--accent-primary)}.msg-reactions-picker{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);box-shadow:var(--shadow-md);gap:1px;padding:2px 4px;display:flex}.msg-reaction-btn{border-radius:var(--radius-sm);transition:transform var(--transition-fast);padding:2px 3px;font-size:14px;line-height:1}.msg-reaction-btn:hover{background:var(--bg-hover);transform:scale(1.3)}.msg-list{flex:1;padding:16px;overflow-y:auto}.msg-list-inner{flex-direction:column;gap:8px;max-width:900px;margin:0 auto;display:flex}@media (width<=768px){.msg-list{padding:12px 8px}.msg-bubble{max-width:95%}}.chat-input-container{border-top:1px solid var(--border-subtle);background:var(--bg-secondary);width:100%;max-width:900px;margin:0 auto;padding:8px 16px 16px}.chat-pills{scrollbar-width:none;gap:6px;padding:0 0 8px;display:flex;overflow-x:auto}.chat-pills::-webkit-scrollbar{display:none}.chat-pill{color:var(--accent-primary);background:var(--accent-primary-bg);border-radius:var(--radius-full);transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;flex-shrink:0;padding:4px 12px;font-size:12px;font-weight:500}.chat-pill:hover:not(:disabled){background:var(--accent-primary);color:var(--text-on-accent)}.chat-pill:disabled{opacity:.5;cursor:not-allowed}.chat-input-form{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);align-items:flex-end;gap:8px;padding:6px 8px;display:flex}.chat-input-form:focus-within{border-color:var(--accent-primary)}.chat-upload-btn{width:32px;height:32px;color:var(--text-tertiary);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.chat-upload-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.chat-textarea-wrap{flex:1;position:relative}.chat-textarea{resize:none;background:0 0;border:none;outline:none;width:100%;min-height:20px;max-height:150px;padding:6px 4px;font-size:14px;line-height:1.4}.chat-send-btn{width:32px;height:32px;color:var(--accent-primary);border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.chat-send-btn:hover:not(:disabled){background:var(--accent-primary);color:var(--text-on-accent)}.chat-send-btn:disabled{opacity:.3;cursor:not-allowed}.chat-mic-btn{width:32px;height:32px;color:var(--text-tertiary);border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.chat-mic-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.chat-mic-active{animation:1s ease-in-out infinite mic-pulse;color:#f85149!important}@keyframes mic-pulse{0%,to{opacity:1}50%{opacity:.5}}.slash-dropdown{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:20;max-height:240px;margin-bottom:4px;position:absolute;bottom:100%;left:0;right:0;overflow-y:auto}.slash-item{text-align:left;width:100%;color:var(--text-primary);transition:background var(--transition-fast);align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.slash-item:first-child{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.slash-item:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.slash-item-active,.slash-item:hover{background:var(--bg-hover)}.slash-cmd{font-family:var(--font-mono);color:var(--accent-primary);white-space:nowrap;font-size:13px;font-weight:600}.slash-desc{color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}@media (width<=768px){.chat-input-container{padding:8px 8px 12px}}.search-panel{background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:8px 16px;display:flex}.search-input-wrap{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-sm);flex:1;align-items:center;gap:8px;padding:4px 10px;display:flex}.search-input-wrap:focus-within{border-color:var(--accent-primary)}.search-icon{flex-shrink:0;font-size:14px}.search-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-size:13px}.search-count{color:var(--text-tertiary);white-space:nowrap;font-size:11px}.search-close{width:28px;height:28px;color:var(--text-tertiary);border-radius:var(--radius-sm);justify-content:center;align-items:center;font-size:18px;display:flex}.search-close:hover{color:var(--text-primary);background:var(--bg-hover)}.artifact-overlay{background:var(--bg-secondary);border-left:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;width:45vw;min-width:350px;max-width:700px;height:100%;animation:.25s ease-out artifact-slide-in;display:flex;position:relative;box-shadow:-4px 0 24px #0000004d}@keyframes artifact-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.artifact-resize-handle{cursor:col-resize;z-index:10;width:6px;transition:background var(--transition-fast);position:absolute;top:0;bottom:0;left:-3px}.artifact-resize-handle:hover,.artifact-resize-handle:active{background:var(--accent-primary);opacity:.5}.artifact-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-tertiary);flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;display:flex}.artifact-title{align-items:center;gap:8px;min-width:0;display:flex}.artifact-lang-badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-full);background:var(--accent-primary-bg);color:var(--accent-primary);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:600}.artifact-label{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.artifact-header-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.artifact-btn{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text-tertiary);transition:all var(--transition-fast);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:14px;display:flex}.artifact-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.artifact-btn-close:hover{color:var(--status-error);background:var(--status-error-bg)}.artifact-copy-toast{color:var(--status-success);padding:0 6px;font-size:11px;font-weight:500;animation:1.5s forwards artifact-toast-fade}@keyframes artifact-toast-fade{0%{opacity:1}70%{opacity:1}to{opacity:0}}.artifact-body{flex:1;min-height:0;overflow:auto}.artifact-iframe{background:#fff;border:none;width:100%;height:100%}.artifact-markdown{color:var(--text-primary);padding:20px 24px;font-size:14px;line-height:1.7}.artifact-markdown h1,.artifact-markdown h2,.artifact-markdown h3,.artifact-markdown h4{color:var(--text-primary);margin-top:24px;margin-bottom:12px;font-weight:600}.artifact-markdown h1{font-size:22px}.artifact-markdown h2{font-size:18px}.artifact-markdown h3{font-size:16px}.artifact-markdown p{margin:0 0 12px}.artifact-markdown ul,.artifact-markdown ol{margin:8px 0 12px;padding-left:24px}.artifact-markdown li{margin-bottom:4px}.artifact-markdown code{font-family:var(--font-mono);background:var(--bg-hover);border-radius:3px;padding:1px 5px;font-size:13px}.artifact-markdown pre{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:12px 0;padding:14px 16px;overflow-x:auto}.artifact-markdown pre code{background:0 0;padding:0}.artifact-markdown blockquote{border-left:3px solid var(--accent-primary);color:var(--text-secondary);margin:12px 0;padding-left:16px}.artifact-markdown table{border-collapse:collapse;width:100%;margin:12px 0}.artifact-markdown th,.artifact-markdown td{border:1px solid var(--border-subtle);text-align:left;padding:8px 12px}.artifact-markdown th{background:var(--bg-tertiary);font-weight:600}.artifact-code{height:100%;padding:16px 20px;overflow:auto}.artifact-code pre{font-family:var(--font-mono);color:var(--text-primary);white-space:pre;tab-size:2;margin:0;font-size:13px;line-height:1.5}.artifact-code code{font-family:inherit}.msg-preview-btn{font-size:11px;font-weight:500;font-family:var(--font-sans);color:var(--accent-primary);background:var(--accent-primary-bg);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.2px;border:1px solid #0000;align-items:center;gap:5px;margin-top:6px;padding:3px 10px;display:inline-flex}.msg-preview-btn:hover{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.msg-preview-btn svg{width:12px;height:12px}.chat-with-artifact .chat-main-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}@media (width<=768px){.artifact-overlay{width:100%;min-width:unset;max-width:unset;z-index:100;border-left:none;position:fixed;inset:0}.artifact-resize-handle{display:none}.artifact-header{padding:12px 16px}}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:48px 24px;display:flex}.empty-state-icon{opacity:.6;margin-bottom:8px;font-size:48px}.empty-state-title{color:var(--text-primary);font-size:16px;font-weight:600}.empty-state-desc{color:var(--text-secondary);max-width:300px;font-size:14px}.empty-state-action{margin-top:16px}.chat-view{flex-direction:column;height:100%;display:flex}.chat-header-bar{border-bottom:1px solid var(--border-subtle);justify-content:flex-end;padding:4px 16px;display:flex}.chat-search-toggle{border-radius:var(--radius-sm);color:var(--text-tertiary);transition:all var(--transition-fast);padding:4px 8px;font-size:16px}.chat-search-toggle:hover,.chat-search-toggle-active{color:var(--accent-primary);background:var(--bg-hover)}.chat-loading,.chat-empty{flex:1;justify-content:center;align-items:center;display:flex}.chat-main-area{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.chat-with-artifact{flex-direction:row}.task-card{border-radius:var(--radius-sm);text-align:left;cursor:pointer;width:100%;transition:background var(--transition-fast);align-items:center;gap:6px;padding:4px 8px;font-size:12px;display:flex;overflow:hidden}.task-card:hover{background:var(--bg-hover)}.task-card-compact{padding:2px 6px;font-size:11px}.task-card-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.task-pending .task-card-dot{background:var(--status-info)}.task-in-progress .task-card-dot{background:var(--status-warning)}.task-completed .task-card-dot{background:var(--status-success)}.task-card-text{text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);flex:1;overflow:hidden}.task-card-recur{color:var(--accent-primary);background:var(--accent-primary-bg);border-radius:var(--radius-sm);flex-shrink:0;padding:0 4px;font-size:10px;font-weight:600}.task-completed .task-card-text{opacity:.6;text-decoration:line-through}.task-completed .task-card-recur{opacity:.5}.task-fired .task-card-dot{background:var(--text-tertiary)}.task-fired .task-card-text{opacity:.5}.month-grid{flex-direction:column;height:100%;display:flex}.month-header-row{border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(7,1fr);display:grid}.month-header-cell{text-align:center;color:var(--text-secondary);text-transform:uppercase;padding:8px;font-size:12px;font-weight:600}.month-body{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;display:grid}.month-cell{border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);cursor:pointer;min-height:80px;transition:background var(--transition-fast);padding:4px;overflow:hidden}.month-cell:nth-child(7n){border-right:none}.month-cell:hover{background:var(--bg-hover)}.month-cell-muted{opacity:.6}.month-cell-today{background:var(--accent-primary-bg)}.month-day-num{color:var(--text-secondary);justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:500;display:inline-flex}.month-day-today{background:var(--accent-primary);color:var(--text-on-accent);border-radius:50%;font-weight:700}.month-cell-tasks{flex-direction:column;gap:1px;margin-top:2px;display:flex}.month-cell-more{color:var(--text-tertiary);padding:2px 6px;font-size:10px}@media (width<=768px){.month-cell{min-height:48px;padding:2px}.month-cell-tasks{display:flex}.month-cell-tasks .task-card-text{font-size:9px}.month-cell-tasks .task-card-recur{display:none}.month-header-cell{padding:4px;font-size:10px}}.week-grid{flex-direction:column;height:100%;display:flex;overflow:hidden}.week-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);z-index:2;flex-shrink:0;grid-template-columns:60px repeat(7,1fr);display:grid;position:sticky;top:0}.week-header-cell{flex-direction:column;align-items:center;gap:2px;padding:8px 4px;display:flex}.week-header-dow{color:var(--text-secondary);text-transform:uppercase;font-size:11px;font-weight:600}.week-header-date{color:var(--text-primary);font-size:20px;font-weight:500}.week-header-today .week-header-dow{color:var(--accent-primary)}.week-date-today{background:var(--accent-primary);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;color:var(--text-on-accent)!important}.week-body{flex:1;overflow-y:auto}.week-row{grid-template-columns:60px repeat(7,1fr);min-height:48px;display:grid}.week-time-gutter{justify-content:flex-end;align-items:flex-start;padding:2px 8px 0 0;display:flex}.week-time-label{color:var(--text-tertiary);text-transform:lowercase;font-size:10px;font-weight:500}.week-cell{border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);cursor:pointer;min-height:48px;padding:2px}.week-cell:last-child{border-right:none}.week-cell:hover{background:var(--bg-hover)}.week-header-today{background:var(--accent-primary-bg)}@media (width<=768px){.week-header,.week-row{grid-template-columns:40px repeat(7,1fr)}.week-header-cell{padding:4px 2px}.week-header-dow{font-size:9px}.week-header-date{font-size:14px}.week-date-today{width:24px;height:24px;font-size:14px}.week-time-gutter{padding:2px 4px 0 0}.week-time-label{font-size:9px}.week-cell{min-height:36px;padding:1px}}.day-view{flex-direction:column;height:100%;display:flex}.day-view-header{border-bottom:1px solid var(--border-subtle);padding:12px 16px}.day-view-date{font-size:16px;font-weight:600}.day-view-today{color:var(--accent-primary)}.day-view-body{flex:1;overflow-y:auto}.day-view-row{border-bottom:1px solid var(--border-subtle);cursor:pointer;min-height:56px;transition:background var(--transition-fast);display:flex}.day-view-row:hover{background:var(--bg-hover)}.day-view-time{width:80px;color:var(--text-tertiary);text-align:right;border-right:1px solid var(--border-subtle);flex-shrink:0;padding:8px 12px;font-size:12px;font-weight:500}.day-view-content{flex-direction:column;flex:1;gap:2px;padding:4px 8px;display:flex}@media (width<=768px){.day-view-time{width:56px;padding:8px 6px;font-size:11px}.day-view-row{min-height:48px}.day-view-header{padding:8px 12px}}.modal-overlay{z-index:1000;animation:fadeIn var(--transition-fast);background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface-modal);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:90vh;animation:slideUp var(--transition-normal);overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-title{font-size:16px;font-weight:600}.modal-close{color:var(--text-tertiary);border-radius:var(--radius-sm);padding:4px;font-size:24px;line-height:1}.modal-close:hover{color:var(--text-primary);background:var(--bg-hover)}.modal-body{padding:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.recurrence-picker{flex-direction:column;gap:12px;display:flex}.recurrence-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.recurrence-btns{gap:4px;display:flex}.recurrence-btn{border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);padding:6px 14px;font-size:13px;font-weight:500}.recurrence-btn:hover{background:var(--bg-hover)}.recurrence-btn-active{background:var(--accent-primary-bg);color:var(--accent-primary);border-color:var(--accent-primary)}.recurrence-time input{width:120px}.recurrence-day-btns{gap:4px;display:flex}.recurrence-day-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-fast);font-size:12px;font-weight:600}.recurrence-day-btn:hover{background:var(--bg-hover)}.recurrence-day-active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.task-modal-form{flex-direction:column;gap:16px;display:flex}.task-modal-field{flex-direction:column;gap:4px;display:flex}.task-modal-field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.task-modal-field textarea{resize:vertical;min-height:60px}.task-modal-row{gap:12px;display:flex}.task-modal-row .task-modal-field{flex:1}.task-modal-actions{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:8px;display:flex}.task-modal-right{gap:8px;margin-left:auto;display:flex}.task-modal-delete{color:var(--status-error);border-radius:var(--radius-md);padding:8px 16px;font-size:13px;font-weight:500}.task-modal-delete:hover{background:var(--status-error-bg)}.task-modal-cancel{color:var(--text-secondary);border-radius:var(--radius-md);padding:8px 16px;font-size:13px;font-weight:500}.task-modal-cancel:hover{background:var(--bg-hover)}.task-modal-save{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:8px 20px;font-size:13px;font-weight:600}.task-modal-save:hover:not(:disabled){background:var(--accent-primary-hover)}.task-modal-save:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.task-modal-row{flex-direction:column;gap:16px}.task-modal-actions{flex-wrap:wrap;gap:8px}.task-modal-save{text-align:center;flex:1}}.calendar-view{flex-direction:column;height:100%;display:flex}.calendar-toolbar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.calendar-toolbar-left{align-items:center;gap:8px;display:flex}.calendar-toolbar-right{align-items:center;gap:12px;display:flex}.cal-nav-btn{width:32px;height:32px;color:var(--text-secondary);border:1px solid var(--border-default);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:16px;display:flex}.cal-nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.cal-title{min-width:200px;font-size:16px;font-weight:600}.cal-today-btn{color:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:4px 12px;font-size:13px;font-weight:500}.cal-today-btn:hover{background:var(--accent-primary);color:var(--text-on-accent)}.cal-view-toggle{border:1px solid var(--border-default);border-radius:var(--radius-md);display:flex;overflow:hidden}.cal-view-btn{color:var(--text-secondary);border-right:1px solid var(--border-default);transition:all var(--transition-fast);padding:6px 14px;font-size:13px;font-weight:500}.cal-view-btn:last-child{border-right:none}.cal-view-btn:hover{background:var(--bg-hover)}.cal-view-btn-active{background:var(--accent-primary-bg);color:var(--accent-primary)}.cal-new-btn{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:6px 16px;font-size:13px;font-weight:600}.cal-new-btn:hover{background:var(--accent-primary-hover)}.calendar-content{flex:1;overflow:hidden}.calendar-loading{justify-content:center;align-items:center;height:100%;display:flex}@media (width<=768px){.calendar-toolbar{padding:8px 12px}.cal-title{min-width:auto;font-size:14px}}.mail-sidebar{border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;gap:12px;width:200px;padding:12px;display:flex}.mail-compose-btn{background:var(--accent-primary);width:100%;color:var(--text-on-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:10px;font-size:14px;font-weight:600}.mail-compose-btn:hover{background:var(--accent-primary-hover)}.mail-folders{flex-direction:column;gap:2px;display:flex}.mail-folder-btn{color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);justify-content:space-between;align-items:center;padding:8px 12px;font-size:14px;font-weight:500;display:flex}.mail-folder-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.mail-folder-active{background:var(--accent-primary-bg);color:var(--accent-primary)}.mail-folder-badge{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-full);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:600;display:flex}@media (width<=768px){.mail-sidebar{border-right:none;border-bottom:1px solid var(--border-subtle);flex-direction:row;align-items:center;gap:8px;width:100%;padding:8px}.mail-compose-btn{width:auto;padding:8px 16px}.mail-folders{flex-direction:row;gap:4px}}.mail-list{flex-direction:column;display:flex;overflow-y:auto}.mail-list-empty{text-align:center;color:var(--text-tertiary);padding:32px 16px;font-size:14px}.mail-list-item{border-bottom:1px solid var(--border-subtle);text-align:left;transition:background var(--transition-fast);flex-direction:column;gap:2px;padding:12px 16px;display:flex}.mail-list-item:hover{background:var(--bg-hover)}.mail-list-selected{background:var(--accent-primary-bg)}.mail-list-unread{border-left:3px solid var(--accent-primary)}.mail-list-top{justify-content:space-between;align-items:center;display:flex}.mail-list-from{color:var(--text-primary);font-size:13px;font-weight:600}.mail-list-unread .mail-list-from{font-weight:700}.mail-list-time{color:var(--text-tertiary);font-size:11px}.mail-list-subject{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.mail-list-preview{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.msg-detail{flex-direction:column;height:100%;display:flex}.msg-detail-header{border-bottom:1px solid var(--border-subtle);padding:16px 20px}.msg-detail-subject{margin-bottom:8px;font-size:18px;font-weight:600}.msg-detail-meta{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin-bottom:12px;font-size:13px;display:flex}.msg-detail-meta strong{color:var(--text-primary)}.msg-detail-actions{gap:8px;display:flex}.msg-detail-btn{border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);padding:6px 14px;font-size:13px;font-weight:500}.msg-detail-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.msg-detail-archive:hover{color:var(--status-warning);border-color:var(--status-warning)}.msg-detail-body{flex:1;padding:20px;font-size:14px;line-height:1.7;overflow-y:auto}.msg-detail-body p{margin:0 0 12px}.msg-detail-body code{font-family:var(--font-mono);background:var(--bg-tertiary);border-radius:3px;padding:1px 4px;font-size:13px}.msg-detail-body pre{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:12px 0;padding:12px;overflow-x:auto}.compose-form{flex-direction:column;gap:12px;display:flex}.compose-field{flex-direction:column;gap:4px;display:flex}.compose-field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.compose-field input,.compose-field textarea{width:100%}.compose-field textarea{resize:vertical;min-height:120px;font-family:var(--font-sans)}.compose-actions{justify-content:flex-end;gap:8px;padding-top:8px;display:flex}.compose-cancel{color:var(--text-secondary);border-radius:var(--radius-md);padding:8px 16px;font-size:13px;font-weight:500}.compose-cancel:hover{background:var(--bg-hover)}.compose-send{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-md);transition:background var(--transition-fast);padding:8px 24px;font-size:13px;font-weight:600}.compose-send:hover:not(:disabled){background:var(--accent-primary-hover)}.compose-send:disabled{opacity:.5;cursor:not-allowed}.mail-view{height:100%;display:flex}.mail-content{flex:1;display:flex;overflow:hidden}.mail-loading{flex:1;justify-content:center;align-items:center;display:flex}.mail-split{flex:1;display:flex;overflow:hidden}.mail-list-pane{border-right:1px solid var(--border-subtle);flex-shrink:0;width:340px;overflow-y:auto}.mail-detail-pane{flex:1;overflow-y:auto}.mail-back-btn{border:none;border-bottom:1px solid var(--border-subtle);color:var(--accent-primary);cursor:pointer;width:100%;font-size:14px;font-weight:500;font-family:var(--font-sans);background:0 0;align-items:center;gap:6px;padding:10px 16px;display:none}.mail-back-btn:hover{background:var(--bg-hover)}@media (width<=768px){.mail-view{flex-direction:column}.mail-list-pane{border-right:none;flex:1;width:100%;max-height:none}.mail-detail-pane,.mail-list-pane--hidden-mobile{display:none}.mail-detail-pane--visible-mobile{flex-direction:column;flex:1;display:flex}.mail-back-btn{display:flex}}.settings-view{max-width:600px;margin:0 auto;padding:24px}.settings-title{font-family:var(--font-display);margin-bottom:24px;font-size:24px;font-weight:600}.settings-section{border-bottom:1px solid var(--border-subtle);padding:20px 0}.settings-section h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:12px;font-size:14px;font-weight:600}.settings-info{flex-direction:column;gap:8px;display:flex}.settings-row{justify-content:space-between;align-items:center;display:flex}.settings-label{color:var(--text-secondary);font-size:14px}.settings-value{color:var(--text-primary);font-size:14px;font-weight:500}.theme-toggle{border:1px solid var(--border-default);border-radius:var(--radius-md);gap:4px;width:fit-content;display:flex;overflow:hidden}.theme-btn{color:var(--text-secondary);transition:all var(--transition-fast);padding:8px 20px;font-size:13px;font-weight:500}.theme-btn:hover{background:var(--bg-hover)}.theme-btn-active{background:var(--accent-primary);color:var(--text-on-accent)}.boop-toggle{background:var(--bg-active);border-radius:var(--radius-full);width:44px;height:24px;transition:background var(--transition-fast);cursor:pointer;position:relative}.boop-toggle-on{background:var(--status-success)}.boop-toggle-thumb{background:var(--text-on-accent);width:20px;height:20px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:2px;left:2px}.boop-toggle-on .boop-toggle-thumb{transform:translate(20px)}.pill-list{flex-wrap:wrap;gap:8px;display:flex}.pill-item{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-primary);align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.pill-remove{color:var(--text-tertiary);padding:0 2px;font-size:14px;line-height:1}.pill-remove:hover{color:var(--status-error)}.pill-add{color:var(--accent-primary);border:1px dashed var(--accent-primary);border-radius:var(--radius-full);transition:all var(--transition-fast);padding:4px 12px;font-size:13px;font-weight:500}.pill-add:hover{background:var(--accent-primary-bg)}.settings-links{flex-direction:column;gap:8px;display:flex}.settings-link{color:var(--accent-primary);transition:color var(--transition-fast);align-items:center;gap:6px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.settings-link:hover{color:var(--accent-primary-hover);text-decoration:none}.settings-logout{color:var(--status-error);border:1px solid var(--status-error);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:10px 24px;font-size:14px;font-weight:500}.settings-logout:hover{background:var(--status-error);color:var(--text-on-accent)}.terminal-view{background:var(--terminal-bg);flex-direction:column;height:100%;display:flex;position:relative}.terminal-header{background:var(--terminal-header-bg);border-bottom:1px solid var(--terminal-border);z-index:2;justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.terminal-title{font-family:var(--font-mono);color:var(--terminal-text-secondary);font-size:13px;font-weight:600}.terminal-status{font-size:12px}.terminal-connected{color:var(--terminal-connected)}.terminal-disconnected{color:var(--terminal-disconnected)}.terminal-output{font-family:var(--font-mono);color:var(--terminal-text);background:var(--terminal-bg);white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;z-index:1;text-shadow:0 0 8px #39d3534d;flex:1;margin:0;padding:12px 16px;font-size:13px;line-height:1.4;position:relative;overflow:auto}.terminal-output::-webkit-scrollbar{width:6px}.terminal-output::-webkit-scrollbar-track{background:var(--terminal-bg)}.terminal-output::-webkit-scrollbar-thumb{background:var(--terminal-border);border-radius:3px}.terminal-output:after{content:"█";color:var(--terminal-text);animation:1s step-end infinite blink}.terminal-view:before{content:"";pointer-events:none;z-index:3;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);position:absolute;inset:0}.terminal-view:after{content:"";pointer-events:none;z-index:3;background:linear-gradient(#0000,#39d35314,#0000);height:4px;animation:8s linear infinite scanline;position:absolute;top:0;left:0;right:0}@media (width<=768px){.terminal-output{padding:8px 12px;font-size:12px}}.teams-view{max-width:1200px;margin:0 auto;padding:24px}.teams-loading,.teams-empty{justify-content:center;align-items:center;height:100%;display:flex}.teams-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:20px;font-weight:600}.teams-subtitle{color:var(--text-tertiary);margin-bottom:20px;font-size:13px}.teams-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:16px;display:grid}.pane-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.pane-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pane-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.pane-title{color:var(--text-primary);font-size:13px;font-weight:600}.pane-target{font-family:var(--font-mono);color:var(--text-tertiary);font-size:11px}.pane-content{font-family:var(--font-mono);color:var(--terminal-text);background:var(--terminal-bg);white-space:pre-wrap;overflow-wrap:break-word;word-break:normal;min-height:120px;max-height:250px;margin:0;padding:10px 14px;font-size:12px;line-height:1.4;overflow-y:auto}.pane-input{border-top:1px solid var(--border-subtle);background:var(--bg-secondary);gap:6px;padding:8px 10px;display:flex}.pane-msg-input{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--surface-input);color:var(--text-primary);outline:none;flex:1;padding:6px 10px;font-size:13px}.pane-msg-input:focus{border-color:var(--accent-primary)}.pane-send-btn{width:32px;height:32px;color:var(--accent-primary);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.pane-send-btn:hover:not(:disabled){background:var(--accent-primary);color:var(--text-on-accent)}.pane-send-btn:disabled{opacity:.3}@media (width<=768px){.teams-view{padding:16px}.teams-grid{grid-template-columns:1fr}}.bookmarks-view{max-width:700px;margin:0 auto;padding:24px}.bookmarks-empty{justify-content:center;align-items:center;height:100%;display:flex}.bookmarks-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:20px;font-weight:600}.bookmarks-subtitle{color:var(--text-tertiary);margin-bottom:20px;font-size:13px}.bookmarks-list{flex-direction:column;gap:10px;display:flex}.bookmark-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:12px 16px;position:relative}.bookmark-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.bookmark-role{text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-sm);padding:2px 6px;font-size:11px;font-weight:600}.bookmark-role-user{color:var(--accent-primary);background:var(--accent-primary-bg)}.bookmark-role-assistant{color:var(--status-success);background:#2ea04326}.bookmark-time{color:var(--text-tertiary);font-size:11px}.bookmark-text{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px;line-height:1.5}.bookmark-remove{width:24px;height:24px;color:var(--text-tertiary);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition-fast);justify-content:center;align-items:center;font-size:16px;display:flex;position:absolute;top:8px;right:8px}.bookmark-card:hover .bookmark-remove{opacity:1}.bookmark-remove:hover{color:var(--status-error);background:var(--bg-hover)}@media (width<=768px){.bookmarks-view{padding:16px}}.status-view{max-width:900px;margin:0 auto;padding:24px}.status-loading{justify-content:center;align-items:center;height:100%;display:flex}.status-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:20px;font-size:20px;font-weight:600}.status-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.status-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast);overflow:hidden}.status-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.status-card-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);padding:12px 16px 8px;font-size:13px;font-weight:600}.status-card-body{padding:12px 16px}.status-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.status-label{color:var(--text-secondary);font-size:13px}.status-value{color:var(--text-primary);font-size:13px;font-weight:500}.status-mono{font-family:var(--font-mono);font-size:12px}.status-ctx-bar{background:var(--bg-primary);border-radius:var(--radius-full);height:8px;margin-bottom:8px;overflow:hidden}.status-ctx-fill{background:var(--accent-primary);border-radius:var(--radius-full);height:100%;transition:width .3s}@media (width<=768px){.status-view{padding:16px}.status-grid{grid-template-columns:1fr}}.ctx-view{max-width:900px;margin:0 auto;padding:24px}.ctx-loading{justify-content:center;align-items:center;height:100%;display:flex}.ctx-error{color:var(--status-error);background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--status-error);padding:16px}.ctx-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:20px;font-size:20px;font-weight:600}.ctx-hero{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);align-items:center;gap:32px;margin-bottom:16px;padding:24px;display:flex}.ctx-ring-wrap{flex-shrink:0;width:120px;height:120px;position:relative}.ctx-ring{width:100%;height:100%;transform:rotate(-90deg)}.ctx-ring-bg{fill:none;stroke:var(--bg-primary);stroke-width:10px}.ctx-ring-fill{fill:none;stroke-width:10px;stroke-linecap:round;transition:stroke-dasharray .6s,stroke .3s}.ctx-ring-label{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ctx-ring-pct{font-family:var(--font-mono);font-size:22px;font-weight:700;line-height:1}.ctx-ring-sub{color:var(--text-tertiary);margin-top:2px;font-size:11px}.ctx-hero-stats{flex-wrap:wrap;gap:24px;display:flex}.ctx-hero-stat{flex-direction:column;align-items:center;min-width:70px;display:flex}.ctx-hero-stat-value{font-family:var(--font-mono);color:var(--text-primary);font-size:24px;font-weight:600}.ctx-hero-stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-top:2px;font-size:11px}.ctx-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast);margin-bottom:16px;overflow:hidden}.ctx-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.ctx-card-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);padding:12px 16px 8px;font-size:13px;font-weight:600}.ctx-card-body{padding:16px}.ctx-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.ctx-grid .ctx-card{margin-bottom:0}.ctx-row{justify-content:space-between;align-items:center;padding:4px 0;display:flex}.ctx-label{color:var(--text-secondary);font-size:13px}.ctx-value{color:var(--text-primary);font-size:13px;font-weight:500}.ctx-mono{font-family:var(--font-mono);font-size:12px}.ctx-stacked-bar{background:var(--bg-primary);border-radius:var(--radius-full);height:16px;margin-bottom:16px;display:flex;overflow:hidden}.ctx-bar-seg{min-width:0;height:100%;transition:width .4s}.ctx-bar-input{background:var(--accent-primary)}.ctx-bar-cache-read{background:var(--accent-secondary)}.ctx-bar-cache-create{background:var(--status-warning)}.ctx-bar-free{background:var(--bg-tertiary)}.ctx-legend{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ctx-legend-item{align-items:center;gap:8px;display:flex}.ctx-legend-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.ctx-legend-text{color:var(--text-secondary);font-size:12px}.ctx-legend-value{font-family:var(--font-mono);color:var(--text-primary);margin-left:auto;font-size:12px}@media (width<=768px){.ctx-view{padding:16px}.ctx-hero{text-align:center;flex-direction:column;gap:16px;padding:16px}.ctx-hero-stats{justify-content:center}.ctx-grid,.ctx-legend{grid-template-columns:1fr}}.oct-container{flex-direction:column;gap:20px;height:100%;padding:24px;display:flex;overflow-y:auto}.oct-container::-webkit-scrollbar{width:6px}.oct-container::-webkit-scrollbar-track{background:0 0}.oct-container::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.oct-header{flex-direction:column;flex-shrink:0;gap:14px;display:flex}.oct-header-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.oct-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:28px;font-weight:600}.oct-stats-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.oct-stat{align-items:center;gap:5px;display:flex}.oct-stat-value{font-family:var(--font-mono);color:var(--text-primary);font-size:14px;font-weight:600}.oct-stat-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.oct-stat-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.oct-stat-divider{background:var(--border-subtle);width:1px;height:16px}.oct-legend{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-wrap:wrap;gap:16px;padding:8px 12px;display:flex}.oct-legend-item{align-items:center;gap:6px;display:flex}.oct-legend-dot{border-radius:50%;width:8px;height:8px}.oct-legend-label{color:var(--text-secondary);text-transform:capitalize;font-size:11px;font-weight:500}.oct-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.oct-search-wrap{flex:1;min-width:200px;max-width:400px;position:relative}.oct-search-icon{color:var(--text-tertiary);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.oct-search{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-input);width:100%;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:8px 36px}.oct-search::placeholder{color:var(--text-tertiary)}.oct-search:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-bg)}.oct-search-clear{color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.oct-search-clear:hover{color:var(--text-primary)}.oct-filters{flex-wrap:wrap;gap:6px;display:flex}.oct-filter-chip{border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;align-items:center;gap:5px;padding:6px 12px;font-weight:500;display:flex}.oct-filter-chip:hover{border-color:var(--border-default);background:var(--bg-hover);color:var(--text-primary)}.oct-filter-chip--active{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-primary-bg)}.oct-filter-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.oct-quickfire{flex-wrap:wrap;flex-shrink:0;gap:10px;display:flex}.oct-quickfire-btn{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.oct-quickfire-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.oct-quickfire-icon{font-size:16px}.oct-quickfire-label{font-size:13px}.oct-loading{color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;font-size:14px;display:flex}.oct-spinner{border:2.5px solid var(--border-subtle);border-top-color:var(--accent-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite oct-spin}@keyframes oct-spin{to{transform:rotate(360deg)}}.oct-empty{color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;font-size:14px;display:flex}.oct-tree{flex-direction:column;align-items:center;gap:0;min-width:0;padding:20px 0 40px;display:flex}.oct-row{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:24px;width:100%;display:flex}.oct-row--center{flex-direction:column;align-items:center}.oct-row--l2{flex-wrap:nowrap;justify-content:center;align-items:center;gap:0;position:relative}.oct-row--l3{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:48px}.oct-row--l4{flex-wrap:wrap;justify-content:center;gap:16px;max-width:1200px;display:flex}.oct-col{flex-direction:column;align-items:center;display:flex}.oct-col--center{align-items:center}.oct-stem-down{background:var(--border-subtle);flex-shrink:0;width:2px;height:32px}.oct-stem-down--short{height:20px}.oct-hbar{background:var(--border-subtle);flex-shrink:0;align-self:center;width:80px;height:2px}.oct-subtree{flex-direction:column;align-items:center;gap:0;display:flex}.oct-tech-groups{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.oct-tech-team-group{border:1.5px dashed var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-primary);min-width:180px;transition:border-color var(--transition-fast);flex-direction:column;align-items:center;gap:12px;padding:16px;display:flex}.oct-tech-team-group:hover{border-color:var(--border-default)}.oct-tech-team-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);background:var(--bg-elevated);border-radius:var(--radius-full);white-space:nowrap;padding:2px 10px;font-size:11px;font-weight:600}.oct-marketing-groups{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.oct-l4-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-full);margin:8px 0;padding:4px 14px;font-size:12px;font-weight:600}.oct-dept-col{flex-direction:column;align-items:center;gap:0;display:flex}.oct-node{background:var(--surface-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:center;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform .15s ease;cursor:default;flex-direction:column;align-items:center;gap:6px;padding:14px 12px 10px;display:flex;position:relative}.oct-node[role=button]{cursor:pointer}.oct-node:hover{border-color:var(--border-default);box-shadow:var(--shadow-md);transform:translateY(-1px)}.oct-node--primary{background:var(--bg-elevated);border-width:2px;border-color:#f1420b44;width:130px;min-height:130px;padding:18px 14px 12px}.oct-node--primary:hover{border-color:#f1420b88;box-shadow:0 4px 20px #f1420b26}.oct-node--l2{width:120px;min-height:120px;padding:16px 12px 10px}.oct-node--dept{width:140px;min-height:105px;padding:12px 10px 8px}.oct-node--agent{background:var(--bg-primary);border-style:solid;border-color:var(--border-subtle);width:130px;min-height:95px;padding:10px 8px 8px}.oct-node--agent:hover{background:var(--bg-elevated)}.oct-avatar{border:1.5px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.oct-avatar--primary{width:52px;height:52px;box-shadow:0 2px 12px #f1420b4d}.oct-avatar--l2{width:44px;height:44px}.oct-avatar--dept{width:38px;height:38px}.oct-avatar--agent{width:32px;height:32px}.oct-avatar-initials{font-family:var(--font-mono);letter-spacing:.05em;font-weight:700}.oct-avatar--primary .oct-avatar-initials{font-size:16px}.oct-avatar--l2 .oct-avatar-initials{font-size:14px}.oct-avatar--dept .oct-avatar-initials{font-size:12px}.oct-avatar--agent .oct-avatar-initials{font-size:11px}.oct-status-dot{border:2px solid var(--surface-card);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.oct-avatar--agent .oct-status-dot{border-width:1.5px;width:8px;height:8px}.oct-node-name{color:var(--text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:12px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.oct-node--primary .oct-node-name{font-size:13px;font-weight:700}.oct-node--agent .oct-node-name{font-size:11px}.oct-node-badge{text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-full);color:#fff;padding:2px 8px;font-size:9px;font-weight:700;line-height:1.4;display:inline-block}.oct-node-task,.oct-node-desc{color:var(--text-tertiary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:10px;line-height:1.3;display:-webkit-box;overflow:hidden}.oct-node-task{color:var(--text-secondary)}.oct-expand-hint{color:var(--text-tertiary);opacity:.7;transition:opacity var(--transition-fast);margin-top:2px;font-size:9px}.oct-node:hover .oct-expand-hint{opacity:1}.oct-dept-agents{flex-direction:column;align-items:center;gap:8px;padding-top:8px;animation:.2s ease-out oct-slide-in;display:flex}@keyframes oct-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.oct-row--l2{flex-wrap:wrap}.oct-hbar{width:40px}.oct-row--l3{gap:24px}.oct-tech-groups{gap:12px}}@media (width<=768px){.oct-container{gap:16px;padding:16px}.oct-title{font-size:22px}.oct-header-top{flex-direction:column;align-items:flex-start}.oct-controls{flex-direction:column;align-items:stretch}.oct-search-wrap{max-width:none}.oct-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.oct-filters::-webkit-scrollbar{display:none}.oct-row--l2{flex-direction:column;align-items:center;gap:0}.oct-hbar{width:2px;height:20px}.oct-row--l3{flex-direction:column;align-items:center;gap:16px}.oct-tech-groups{flex-direction:column;align-items:center}.oct-tech-team-group{width:100%;min-width:160px;max-width:300px}.oct-marketing-groups{flex-direction:column;align-items:center}.oct-row--l4{gap:12px}.oct-node--primary{width:110px;min-height:110px}.oct-node--l2{width:100px;min-height:100px}.oct-node--dept{width:120px;min-height:90px}.oct-node--agent{width:110px;min-height:85px}.oct-quickfire{gap:8px}.oct-quickfire-btn{padding:6px 12px;font-size:12px}.oct-legend{gap:10px;padding:6px 10px}}@media (width<=480px){.oct-container{gap:12px;padding:12px}.oct-row--l4{gap:8px}.oct-node--primary{width:100px;min-height:100px}.oct-node--dept,.oct-node--agent{width:100px;min-height:80px}.oct-tech-team-group{gap:8px;padding:12px}}@media (width>=1400px){.oct-row--l4{gap:20px;max-width:1400px}.oct-hbar{width:120px}.oct-row--l3{gap:64px}}.docs-view{height:100%;display:flex}.docs-list-pane{border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;width:340px;display:flex;overflow:hidden}.docs-list-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px;display:flex}.docs-list-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.docs-create-btn{background:var(--accent-primary);color:var(--text-on-accent);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-sans);border:none;border-radius:6px;padding:6px 14px;transition:opacity .15s}.docs-create-btn:hover{opacity:.85}.docs-filters{border-bottom:1px solid var(--border-subtle);gap:8px;padding:12px 16px;display:flex}.docs-search{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);border-radius:6px;outline:none;flex:1;padding:7px 10px;transition:border-color .15s}.docs-search:focus{border-color:var(--accent-primary)}.docs-search::placeholder{color:var(--text-muted)}.docs-visibility-filter{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);cursor:pointer;border-radius:6px;outline:none;padding:7px 8px}.docs-loading{justify-content:center;align-items:center;padding:48px 0;display:flex}.docs-empty-list{padding:32px 16px}.docs-list{flex:1;overflow-y:auto}.docs-list-item{text-align:left;border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;width:100%;font-family:var(--font-sans);background:0 0;padding:12px 16px;transition:background .12s;display:block}.docs-list-item:hover{background:var(--bg-hover)}.docs-list-item--active{background:var(--bg-active,var(--bg-hover));border-left:3px solid var(--accent-primary)}.docs-list-item-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:14px;font-weight:500;overflow:hidden}.docs-list-item-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.docs-list-item-visibility{text-transform:capitalize;background:var(--bg-secondary);border-radius:4px;padding:1px 6px;font-size:11px}.docs-list-item-date{font-size:11px}.docs-list-item-tags{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.docs-tag-chip{background:color-mix(in srgb, var(--tag-color) 18%, transparent);color:var(--tag-color);white-space:nowrap;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.docs-tag-more{color:var(--text-muted);padding:2px 4px;font-size:11px}.docs-detail-pane{flex-direction:column;flex:1;display:flex;overflow-y:auto}.docs-detail-content{flex:1;padding:24px;overflow-y:auto}.docs-back-btn{border:none;border-bottom:1px solid var(--border-subtle);color:var(--accent-primary);cursor:pointer;width:100%;font-size:14px;font-weight:500;font-family:var(--font-sans);background:0 0;align-items:center;gap:6px;padding:10px 16px;display:none}.docs-back-btn:hover{background:var(--bg-hover)}.docs-reader-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.docs-reader-title{color:var(--text-primary);margin:0;font-size:22px;font-weight:700;line-height:1.3}.docs-reader-actions{flex-shrink:0;gap:8px;display:flex}.docs-reader-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;font-size:13px;display:flex}.docs-reader-visibility{text-transform:capitalize;background:var(--bg-secondary);border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500}.docs-reader-tags{flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.docs-reader-body{color:var(--text-primary);font-size:14px;line-height:1.7}.docs-reader-body h1,.docs-reader-body h2,.docs-reader-body h3,.docs-reader-body h4{color:var(--text-primary);margin-top:1.5em;margin-bottom:.5em}.docs-reader-body h1{font-size:1.5em}.docs-reader-body h2{font-size:1.3em}.docs-reader-body h3{font-size:1.15em}.docs-reader-body p{margin:.75em 0}.docs-reader-body code{background:var(--bg-secondary);font-size:.9em;font-family:var(--font-mono,monospace);border-radius:4px;padding:2px 6px}.docs-reader-body pre{background:var(--bg-secondary);border-radius:8px;margin:1em 0;padding:16px;overflow-x:auto}.docs-reader-body pre code{background:0 0;padding:0}.docs-reader-body ul,.docs-reader-body ol{margin:.75em 0;padding-left:1.5em}.docs-reader-body blockquote{border-left:3px solid var(--accent-primary);color:var(--text-secondary);background:var(--bg-secondary);border-radius:0 6px 6px 0;margin:1em 0;padding:.5em 1em}.docs-reader-body table{border-collapse:collapse;width:100%;margin:1em 0}.docs-reader-body th,.docs-reader-body td{border:1px solid var(--border-subtle);text-align:left;padding:8px 12px;font-size:13px}.docs-reader-body th{background:var(--bg-secondary);font-weight:600}.docs-reader-body a{color:var(--accent-primary);text-decoration:none}.docs-reader-body a:hover{text-decoration:underline}.docs-editor,.docs-create-form{flex-direction:column;gap:12px;display:flex}.docs-editor-title{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-size:16px;font-weight:600;font-family:var(--font-sans);border-radius:6px;outline:none;padding:10px 12px}.docs-editor-title:focus{border-color:var(--accent-primary)}.docs-editor-row{gap:8px;display:flex}.docs-editor-visibility{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);cursor:pointer;border-radius:6px;outline:none;padding:8px 10px}.docs-editor-tags{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);border-radius:6px;outline:none;flex:1;padding:8px 10px}.docs-editor-tags:focus,.docs-editor-visibility:focus{border-color:var(--accent-primary)}.docs-editor-body{background:var(--bg-input,var(--bg-secondary));border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-size:14px;font-family:var(--font-mono,monospace);resize:vertical;border-radius:6px;outline:none;min-height:200px;padding:12px;line-height:1.6}.docs-editor-body:focus{border-color:var(--accent-primary)}.docs-editor-body::placeholder{color:var(--text-muted)}.docs-editor-actions{justify-content:flex-end;gap:8px;display:flex}.docs-btn{cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-sans);border:none;border-radius:6px;padding:8px 16px;transition:opacity .15s}.docs-btn:hover{opacity:.85}.docs-btn:disabled{opacity:.5;cursor:not-allowed}.docs-btn--primary{background:var(--accent-primary);color:var(--text-on-accent)}.docs-btn--secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-subtle)}.docs-btn--danger{background:var(--accent-error,#ef4444);color:#fff}@media (width<=768px){.docs-view{flex-direction:column}.docs-list-pane{border-right:none;flex:1;width:100%}.docs-detail-pane,.docs-list-pane--hidden-mobile{display:none}.docs-detail-pane--visible-mobile{flex-direction:column;flex:1;display:flex}.docs-back-btn{display:flex}.docs-detail-content{padding:16px}.docs-reader-header{flex-direction:column;gap:12px}.docs-reader-title{font-size:18px}.docs-editor-row,.docs-filters{flex-direction:column}}.sheets-view{height:100%;display:flex;overflow:hidden}.sheets-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-subtle);flex-direction:column;width:240px;min-width:240px;display:flex;overflow:hidden}.sheets-sidebar-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:16px;display:flex}.sheets-sidebar-header h3{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:13px;font-weight:600}.sheets-sidebar-list{flex:1;padding:8px;overflow-y:auto}.sheets-wb-item{text-align:left;border-radius:var(--radius-md);width:100%;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);align-items:center;gap:8px;margin-bottom:2px;padding:8px 12px;font-size:14px;display:flex}.sheets-wb-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sheets-wb-item.active{background:var(--accent-primary-bg);color:var(--accent-primary);font-weight:500}.sheets-wb-item .wb-icon{flex-shrink:0;font-size:16px}.sheets-wb-item .wb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.sheets-wb-delete{opacity:0;color:var(--text-tertiary);border-radius:var(--radius-sm);transition:opacity var(--transition-fast), color var(--transition-fast);flex-shrink:0;padding:2px 4px;font-size:16px}.sheets-wb-item:hover .sheets-wb-delete{opacity:1}.sheets-wb-delete:hover{color:var(--status-error);background:var(--status-error-bg)}.sheets-tabs{border-top:1px solid var(--border-subtle);padding:8px}.sheets-tabs-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;padding:4px 8px;font-size:11px}.sheets-tab{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast);margin-bottom:2px;padding:6px 12px;font-size:13px}.sheets-tab:hover{background:var(--bg-hover)}.sheets-tab.active{background:var(--bg-active);color:var(--text-primary);font-weight:500}.sheets-add-btn{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);padding:6px 12px;font-size:13px}.sheets-add-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sheets-main{background:var(--bg-primary);flex-direction:column;flex:1;display:flex;overflow:hidden}.sheets-toolbar{border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 20px;display:flex}.sheets-toolbar-title{color:var(--text-primary);font-size:16px;font-weight:600}.sheets-toolbar-meta{color:var(--text-tertiary);margin-left:8px;font-size:12px}.sheets-toolbar-actions{align-items:center;gap:8px;display:flex}.sheets-btn{border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);white-space:nowrap;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;display:inline-flex}.sheets-btn-primary{background:var(--accent-primary);color:var(--text-on-accent)}.sheets-btn-primary:hover{background:var(--accent-primary-hover)}.sheets-btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-subtle)}.sheets-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.sheets-btn-danger{background:var(--status-error-bg);color:var(--status-error)}.sheets-btn-danger:hover{background:var(--status-error);color:var(--text-on-accent)}.sheets-grid-wrapper{flex:1;position:relative;overflow:auto}.sheets-grid{border-collapse:collapse;table-layout:auto;width:100%;font-size:13px}.sheets-grid thead{z-index:10;position:sticky;top:0}.sheets-grid th{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;text-align:left;border-bottom:2px solid var(--border-default);white-space:nowrap;-webkit-user-select:none;user-select:none;min-width:120px;padding:10px 14px;font-size:12px;font-weight:600}.sheets-grid th.col-actions{text-align:center;width:48px;min-width:48px}.sheets-grid th.col-row-num{text-align:center;width:48px;min-width:48px;color:var(--text-tertiary)}.sheets-grid td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:top;padding:0}.sheets-grid tr:hover td{background:var(--bg-hover)}.sheets-grid tr.sheets-row-adding td{background:var(--accent-primary-bg)}.sheets-cell{cursor:text;word-break:break-word;min-height:36px;transition:background var(--transition-fast);padding:8px 14px;line-height:1.4}.sheets-cell:hover{background:var(--bg-active)}.sheets-cell.editing{background:var(--surface-input);padding:4px 6px}.sheets-cell-input{background:var(--surface-input);border:2px solid var(--accent-primary);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);resize:vertical;outline:none;min-height:28px;padding:4px 8px;line-height:1.4}.sheets-cell-input:focus{box-shadow:0 0 0 2px var(--accent-primary-bg)}.sheets-row-num{text-align:center;color:var(--text-tertiary);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;padding:8px 6px;font-size:12px}.sheets-row-actions{text-align:center;padding:6px}.sheets-row-delete-btn{color:var(--text-tertiary);border-radius:var(--radius-sm);opacity:0;transition:opacity var(--transition-fast), color var(--transition-fast);padding:4px;font-size:16px}.sheets-grid tr:hover .sheets-row-delete-btn{opacity:1}.sheets-row-delete-btn:hover{color:var(--status-error);background:var(--status-error-bg)}.sheets-add-row{border-top:1px solid var(--border-subtle);flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.sheets-pagination{border-top:1px solid var(--border-subtle);color:var(--text-tertiary);background:var(--bg-secondary);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 20px;font-size:12px;display:flex}.sheets-pagination-controls{gap:6px;display:flex}.sheets-page-btn{border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;padding:4px 10px;font-size:12px}.sheets-page-btn:hover{background:var(--bg-hover)}.sheets-page-btn:disabled{opacity:.4;cursor:not-allowed}.sheets-empty{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.sheets-form-group{margin-bottom:16px}.sheets-form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.sheets-form-input{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast);padding:8px 12px;font-size:14px}.sheets-form-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary-bg);outline:none}.sheets-form-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.sheets-columns-list{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.sheets-column-row{align-items:center;gap:8px;display:flex}.sheets-column-row .sheets-form-input{flex:1}.sheets-column-row select{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100px;color:var(--text-primary);padding:8px;font-size:13px}.sheets-column-remove{color:var(--text-tertiary);cursor:pointer;padding:4px;font-size:18px}.sheets-column-remove:hover{color:var(--status-error)}.sheets-loading{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}@media (width<=768px){.sheets-view{flex-direction:column}.sheets-sidebar{border-right:none;border-bottom:1px solid var(--border-subtle);width:100%;min-width:100%;max-height:200px}.sheets-toolbar{flex-wrap:wrap;padding:10px 12px}.sheets-grid th,.sheets-cell{padding:6px 10px;font-size:12px}}.hub-view{height:100%;display:flex;overflow:hidden}.hub-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-subtle);flex-direction:column;flex-shrink:0;width:240px;display:flex;overflow:hidden}.hub-sidebar-header{border-bottom:1px solid var(--border-subtle);padding:16px 16px 12px}.hub-sidebar-title{font-family:var(--font-display);color:var(--text-primary);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:16px;font-weight:600}.hub-sidebar-nav{flex:1;padding:8px 0;overflow-y:auto}.hub-sidebar-group{margin-bottom:2px}.hub-sidebar-group-btn{width:100%;color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 16px;display:flex}.hub-sidebar-group-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.hub-sidebar-group-btn--active{color:var(--accent-primary);background:var(--accent-primary-bg)}.hub-sidebar-rooms{padding:2px 0 6px}.hub-sidebar-room-btn{width:100%;color:var(--text-tertiary);font-size:13px;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;align-items:center;gap:6px;padding:5px 16px 5px 36px;display:flex}.hub-sidebar-room-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.hub-sidebar-room-btn--active{color:var(--accent-primary);background:var(--accent-primary-bg)}.hub-sidebar-hash{color:var(--text-tertiary);font-size:14px;font-weight:600}.hub-sidebar-empty{color:var(--text-tertiary);text-align:center;padding:16px;font-size:13px}.hub-main{flex:1;display:flex;position:relative;overflow:hidden}.hub-loading{flex:1;justify-content:center;align-items:center;display:flex}.hub-loading-inline{z-index:5;position:absolute;top:12px;right:12px}.hub-panel{flex-direction:column;display:flex;overflow:hidden}.hub-panel--groups,.hub-panel--rooms{display:none}.hub-panel--threads{border-right:1px solid var(--border-subtle);flex-shrink:0;width:360px;overflow-y:auto}.hub-panel--posts{flex:1;overflow-y:auto}.hub-list{flex-direction:column;height:100%;display:flex}.hub-list-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:12px 16px 8px}.hub-list-header-row{justify-content:space-between;align-items:center;display:flex}.hub-list-title{color:var(--text-primary);font-size:14px;font-weight:600;font-family:var(--font-sans);margin:0}.hub-list-item{border:none;border-bottom:1px solid var(--border-subtle);width:100%;color:var(--text-primary);font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.hub-list-item:hover{background:var(--bg-hover)}.hub-list-item--thread{align-items:flex-start;padding:14px 16px}.hub-item-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.hub-item-icon--group{background:var(--accent-primary-bg);color:var(--accent-primary)}.hub-item-icon--room{background:var(--accent-secondary-bg);color:var(--accent-secondary);font-size:18px;font-weight:700;font-family:var(--font-mono)}.hub-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.hub-item-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.hub-item-desc{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.hub-item-preview{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.hub-item-meta{align-items:center;gap:8px;margin-top:4px;display:flex}.hub-item-author{color:var(--accent-primary);font-size:12px;font-weight:500}.hub-item-time{color:var(--text-tertiary);font-size:11px}.hub-item-chevron{color:var(--text-tertiary);flex-shrink:0}.hub-back-btn{color:var(--accent-primary);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;align-items:center;gap:6px;margin-bottom:4px;padding:6px 0;display:flex}.hub-back-btn:hover{opacity:.8}.hub-compose-btn{border-radius:var(--radius-full);background:var(--accent-primary);width:32px;height:32px;color:var(--text-on-accent);cursor:pointer;transition:background var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.hub-compose-btn:hover{background:var(--accent-primary-hover)}.hub-detail-wrapper{flex-direction:column;height:100%;display:flex}.hub-posts{flex-direction:column;flex:1;display:flex;overflow:hidden}.hub-posts-header{border-bottom:1px solid var(--border-subtle);flex-shrink:0;padding:12px 16px}.hub-posts-title{color:var(--text-primary);font-size:16px;font-weight:600;font-family:var(--font-sans);margin:0}.hub-posts-meta{align-items:center;gap:8px;margin-top:4px;display:flex}.hub-posts-body{flex:1;padding:8px 0;overflow-y:auto}.hub-post{border-bottom:1px solid var(--border-subtle);padding:16px 20px}.hub-post--op{background:var(--accent-primary-bg)}.hub-post-author{align-items:center;gap:10px;margin-bottom:8px;display:flex}.hub-avatar{border-radius:var(--radius-full);background:var(--accent-primary);width:32px;height:32px;color:var(--text-on-accent);text-transform:uppercase;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.hub-post-author-info{flex-direction:column;gap:1px;display:flex}.hub-post-author-name{color:var(--text-primary);font-size:13px;font-weight:600}.hub-post-author-time{color:var(--text-tertiary);font-size:11px}.hub-post-content{color:var(--text-primary);padding-left:42px;font-size:14px;line-height:1.6}.hub-post-content p{margin:0 0 8px}.hub-post-content p:last-child{margin-bottom:0}.hub-post-content pre{background:var(--bg-tertiary);border-radius:var(--radius-md);font-family:var(--font-mono);padding:12px;font-size:13px;overflow-x:auto}.hub-post-content code{background:var(--bg-tertiary);border-radius:var(--radius-sm);font-family:var(--font-mono);padding:1px 5px;font-size:13px}.hub-post-content pre code{background:0 0;padding:0}.hub-post-content blockquote{border-left:3px solid var(--accent-primary);color:var(--text-secondary);margin:8px 0;padding:4px 12px}.hub-post-content a{color:var(--accent-primary);text-decoration:none}.hub-post-content a:hover{text-decoration:underline}.hub-post-content ul,.hub-post-content ol{margin:4px 0;padding-left:20px}.hub-post-content table{border-collapse:collapse;width:100%;margin:8px 0}.hub-post-content th,.hub-post-content td{border:1px solid var(--border-subtle);padding:6px 10px;font-size:13px}.hub-post-content th{background:var(--bg-tertiary);font-weight:600}.hub-post-content img{border-radius:var(--radius-md);max-width:100%}.hub-reply-btn{background:var(--bg-secondary);border:none;border-top:1px solid var(--border-subtle);width:100%;color:var(--accent-primary);font-size:14px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:12px;display:flex}.hub-reply-btn:hover{background:var(--bg-hover)}.hub-compose-overlay{z-index:10;background:var(--bg-secondary);border-top:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);position:absolute;bottom:0;left:0;right:0}.hub-compose{padding:12px 16px}.hub-compose-title{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:14px;font-family:var(--font-sans);transition:border-color var(--transition-fast);outline:none;margin-bottom:8px;padding:8px 12px;font-weight:500}.hub-compose-title:focus{border-color:var(--accent-primary)}.hub-compose-row{flex-direction:column;gap:8px;display:flex}.hub-compose-body{background:var(--surface-input);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:14px;font-family:var(--font-sans);resize:vertical;min-height:60px;transition:border-color var(--transition-fast);outline:none;padding:8px 12px;line-height:1.5}.hub-compose-body:focus{border-color:var(--accent-primary)}.hub-compose-body::placeholder,.hub-compose-title::placeholder{color:var(--text-tertiary)}.hub-compose-actions{justify-content:flex-end;gap:8px;display:flex}.hub-compose-cancel{border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-family:var(--font-sans);cursor:pointer;transition:background var(--transition-fast);background:0 0;padding:6px 14px}.hub-compose-cancel:hover{background:var(--bg-hover)}.hub-compose-send{background:var(--accent-primary);color:var(--text-on-accent);border-radius:var(--radius-md);font-size:13px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:background var(--transition-fast);border:none;padding:6px 16px}.hub-compose-send:hover:not(:disabled){background:var(--accent-primary-hover)}.hub-compose-send:disabled{opacity:.5;cursor:not-allowed}.hub-compose-hint{color:var(--text-tertiary);text-align:right;margin-top:4px;font-size:11px;display:block}@media (width<=768px){.hub-sidebar{display:none}.hub-panel--groups,.hub-panel--rooms{flex:1;display:flex}.hub-panel--threads{border-right:none;flex:1;width:100%}.hub-panel--posts{flex:1}.hub-panel--hidden-mobile,.hub-panel--hidden-mobile-detail,.hub-panel--hidden-mobile-posts{display:none!important}.hub-panel--visible-mobile{flex:1;display:flex!important}.hub-main{flex-direction:column}.hub-compose-overlay{position:fixed;bottom:0;left:0;right:0}.hub-post-content{margin-top:8px;padding-left:0}.hub-post{padding:12px 16px}}.hub-panel--threads::-webkit-scrollbar{width:6px}.hub-panel--posts::-webkit-scrollbar{width:6px}.hub-posts-body::-webkit-scrollbar{width:6px}.hub-sidebar-nav::-webkit-scrollbar{width:6px}.hub-panel--threads::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.hub-panel--posts::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.hub-posts-body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.hub-sidebar-nav::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}.hub-panel--threads::-webkit-scrollbar-track{background:var(--scrollbar-bg)}.hub-panel--posts::-webkit-scrollbar-track{background:var(--scrollbar-bg)}.hub-posts-body::-webkit-scrollbar-track{background:var(--scrollbar-bg)}.hub-sidebar-nav::-webkit-scrollbar-track{background:var(--scrollbar-bg)}.pts-view{max-width:900px;margin:0 auto;padding:24px}.pts-loading{justify-content:center;align-items:center;height:100%;display:flex}.pts-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:20px;font-size:20px;font-weight:600}.pts-hero{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);align-items:center;gap:32px;margin-bottom:16px;padding:24px;display:flex}.pts-score-ring{background:var(--gradient-brand);border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:100px;height:100px;display:flex}.pts-score-value{font-family:var(--font-mono);color:var(--text-on-accent);font-size:28px;font-weight:800;line-height:1}.pts-score-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-on-accent);opacity:.8;margin-top:2px;font-size:10px}.pts-hero-stats{flex-wrap:wrap;gap:24px;display:flex}.pts-hero-stat{flex-direction:column;align-items:center;min-width:80px;display:flex}.pts-hero-stat-value{font-family:var(--font-mono);color:var(--text-primary);font-size:22px;font-weight:600}.pts-hero-stat-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-top:2px;font-size:11px}.pts-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);transition:transform var(--transition-fast), box-shadow var(--transition-fast);margin-bottom:16px;overflow:hidden}.pts-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pts-card-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);padding:12px 16px 8px;font-size:13px;font-weight:600}.pts-card-body{padding:16px}.pts-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:16px;display:grid}.pts-grid .pts-card{margin-bottom:0}.pts-empty{color:var(--text-tertiary);font-size:13px}.pts-reactor-bars{flex-direction:column;gap:12px;display:flex}.pts-reactor-row{align-items:center;gap:10px;display:flex}.pts-reactor-label{color:var(--text-secondary);flex-shrink:0;width:52px;font-size:13px;font-weight:500}.pts-reactor-bar-bg{background:var(--bg-primary);border-radius:var(--radius-full);flex:1;height:12px;overflow:hidden}.pts-reactor-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .4s}.pts-bar-human{background:var(--accent-primary)}.pts-bar-civ{background:var(--accent-secondary)}.pts-reactor-score{font-family:var(--font-mono);color:var(--text-primary);text-align:right;min-width:30px;font-size:14px;font-weight:600}.pts-emoji-list{flex-direction:column;gap:8px;display:flex}.pts-emoji-row{align-items:center;gap:10px;display:flex}.pts-emoji-icon{text-align:center;width:28px;font-size:20px}.pts-emoji-name{color:var(--text-secondary);flex:1;font-size:13px}.pts-emoji-count{font-family:var(--font-mono);color:var(--text-primary);font-size:13px;font-weight:600}.pts-sentiment-grid{flex-wrap:wrap;gap:8px;display:flex}.pts-sentiment-chip{background:var(--bg-tertiary);border-radius:var(--radius-full);border:1px solid var(--border-subtle);align-items:center;gap:6px;padding:6px 12px;display:flex}.pts-sentiment-label{color:var(--text-secondary);text-transform:capitalize;font-size:12px}.pts-sentiment-count{font-family:var(--font-mono);color:var(--text-primary);font-size:12px;font-weight:600}.pts-feed{flex-direction:column;gap:12px;display:flex}.pts-feed-item{border-radius:var(--radius-md);transition:background var(--transition-fast);gap:10px;padding:8px;display:flex}.pts-feed-item:hover{background:var(--bg-tertiary)}.pts-feed-emoji{text-align:center;flex-shrink:0;width:28px;font-size:20px}.pts-feed-content{flex:1;min-width:0}.pts-feed-meta{align-items:center;gap:6px;font-size:13px;display:flex}.pts-feed-reactor{color:var(--text-primary);font-weight:600}.pts-feed-arrow{color:var(--text-tertiary)}.pts-feed-role{color:var(--text-secondary)}.pts-feed-weight{font-family:var(--font-mono);color:var(--accent-primary);margin-left:auto;font-size:12px;font-weight:600}.pts-feed-preview{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.pts-feed-time{color:var(--text-tertiary);margin-top:2px;font-size:11px}@media (width<=768px){.pts-view{padding:16px}.pts-hero{text-align:center;flex-direction:column;gap:16px;padding:16px}.pts-hero-stats{justify-content:center}.pts-grid{grid-template-columns:1fr}}.browser-view{background:var(--bg-primary);flex-direction:column;height:100%;display:flex;overflow:hidden}.browser-toolbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.browser-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:background .3s}.browser-url-form{flex:1;gap:4px;max-width:480px;display:flex}.browser-url-input{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);font-size:13px;font-family:var(--font-mono);border-radius:6px;outline:none;flex:1;padding:5px 10px}.browser-url-input:focus{border-color:var(--accent-primary)}.browser-go-btn{background:var(--accent-primary);color:var(--text-on-accent);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:5px 12px;font-size:13px}.browser-go-btn:hover{opacity:.85}.browser-current-url{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-family:var(--font-mono);flex:1;overflow:hidden}.browser-control-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:6px;flex-shrink:0;padding:5px 12px;font-size:12px;transition:all .15s}.browser-control-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.browser-control-btn:hover{border-color:var(--accent-primary)}.browser-body{flex:1;gap:0;display:flex;overflow:hidden}.browser-canvas-wrap{background:#111;flex:1;position:relative;overflow:auto}.browser-canvas{width:100%;max-width:100%;height:auto;display:block}.browser-canvas.human-mode{cursor:crosshair}.browser-overlay{z-index:10;background:#000000b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.browser-overlay-msg{color:var(--text-secondary);text-align:center;padding:20px;font-size:14px}.browser-log{border-left:1px solid var(--border-color);background:var(--bg-secondary);flex-direction:column;flex-shrink:0;width:220px;display:flex;overflow-y:auto}.browser-log-header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);flex-shrink:0;padding:8px 12px;font-size:11px;font-weight:600}.browser-log-empty{color:var(--text-tertiary);padding:16px 12px;font-size:12px}.browser-log-entry{border-bottom:1px solid var(--border-color);flex-direction:column;gap:2px;padding:6px 12px;display:flex}.browser-log-action{color:var(--accent-primary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.browser-log-detail{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-family:var(--font-mono);overflow:hidden}.browser-control-hint{background:var(--accent-primary);color:var(--text-on-accent);text-align:center;flex-shrink:0;padding:6px 12px;font-size:12px}.browser-control-hint kbd{font-family:var(--font-mono);background:#fff3;border-radius:3px;padding:1px 5px;font-size:11px}
