*,*:before,*:after{box-sizing:border-box}:root,[data-theme=dark]{color-scheme:dark;--bg: #0f0f0f;--panel: #1a1a1a;--border: #2a2a2a;--text: #e0e0e0;--muted: #999;--accent: #7eb8da;--nav-active-bg: #1e2a35;--nav-hover-bg: #252525;--inbound: #151515;--outbound: #1a2a3a;--msg-hover: rgba(255, 255, 255, .04);--sender-you: #7eb8da;--code-bg: #1c1c1c;--code-border: #3a3a3a;--inline-code-fg: #e99547;--mention-user-fg: #6db3e8;--mention-user-bg: rgba(59, 130, 246, .25);--mention-here-fg: #e2a828;--mention-here-bg: rgba(234, 179, 8, .2);--link: #7eb8da;--danger: #f87171;--sidebar-width: 220px;--sidebar-collapsed-width: 52px;--panel-header-height: 52px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}[data-theme=light]{color-scheme:light;--bg: #f4f4f4;--panel: #ffffff;--border: #e0e0e0;--text: #1a1a1a;--muted: #666;--accent: #3d7a9e;--nav-active-bg: #e8f2f8;--nav-hover-bg: #f0f0f0;--inbound: #f0f0f0;--outbound: #e8f2f8;--msg-hover: rgba(0, 0, 0, .04);--sender-you: #3d7a9e;--code-bg: #ececec;--code-border: #c8c8c8;--inline-code-fg: #c05621;--mention-user-fg: #2563eb;--mention-user-bg: rgba(37, 99, 235, .12);--mention-here-fg: #b45309;--mention-here-bg: rgba(234, 179, 8, .18);--link: #3d7a9e;--danger: #dc2626}@media(prefers-color-scheme:light){:root:not([data-theme=dark]):not([data-theme=light]){color-scheme:light;--bg: #f4f4f4;--panel: #ffffff;--border: #e0e0e0;--text: #1a1a1a;--muted: #666;--accent: #3d7a9e;--nav-active-bg: #e8f2f8;--nav-hover-bg: #f0f0f0;--inbound: #f0f0f0;--outbound: #e8f2f8;--msg-hover: rgba(0, 0, 0, .04);--sender-you: #3d7a9e;--code-bg: #ececec;--code-border: #c8c8c8;--inline-code-fg: #c05621;--mention-user-fg: #2563eb;--mention-user-bg: rgba(37, 99, 235, .12);--mention-here-fg: #b45309;--mention-here-bg: rgba(234, 179, 8, .18);--link: #3d7a9e;--danger: #dc2626}}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}#root{min-height:100vh}.layout{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;position:relative;overflow:hidden;z-index:100;transition:width .2s ease,box-shadow .2s ease}.sidebar--collapsed{border-right:none;pointer-events:none}.sidebar-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;height:var(--panel-header-height);padding:0 12px 0 16px;border-bottom:1px solid var(--border)}.sidebar-header h1{font-size:16px;margin:0;padding:0;color:var(--text);border:none;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sidebar-hide-btn,.sidebar-show-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;padding:0}.sidebar-hide-btn:hover,.sidebar-show-btn:hover,.sidebar-hide-btn:focus-visible,.sidebar-show-btn:focus-visible{color:var(--text);background:var(--nav-hover-bg)}.sidebar-show-btn{position:absolute;top:calc((var(--panel-header-height) - 28px) / 2);left:12px;z-index:20;background:var(--panel);border:1px solid var(--border)}.sidebar-resize-handle{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;touch-action:none;z-index:2}.sidebar-resize-handle:hover,.sidebar-resize-handle:focus-visible{background:color-mix(in srgb,var(--accent) 35%,transparent);outline:none}body.sidebar-resizing{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.sidebar-resizing *{cursor:col-resize!important}.sidebar-nav{flex:1;overflow-y:auto;padding:8px 0}.nav-section{margin-bottom:8px}.nav-section-label{display:block;padding:8px 16px 4px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.nav-section-heading{display:flex;align-items:center}.nav-section-heading .nav-section-label{flex:1}.nav-section-add{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:4px 10px 0 0;border:none;border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}.nav-section-add:hover,.nav-section-add:focus-visible{background:var(--nav-hover-bg);color:var(--accent)}.nav-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;border-right:2px solid transparent;background:transparent;color:var(--muted);padding:10px 16px;font-size:14px;cursor:pointer;font:inherit;transition:background .15s,color .15s}.nav-item-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px}.nav-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.nav-item-copy{display:flex;flex:1;min-width:0;flex-direction:column;line-height:1.2}.nav-project-agent{margin-top:2px;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-unread-badge{flex-shrink:0;margin-left:auto;min-width:18px;padding:1px 6px;border-radius:999px;background:var(--accent);color:var(--bg);font-size:11px;font-weight:600;line-height:16px;text-align:center}.nav-item:hover{background:var(--nav-hover-bg);color:var(--text)}.nav-item.active{background:var(--nav-active-bg);color:var(--accent);border-right-color:var(--accent)}.nav-room{margin-bottom:2px}.nav-room-header{display:flex;align-items:stretch;min-height:36px;width:100%;border-right:2px solid transparent;transition:background .15s,color .15s}.nav-room-header:hover{background:var(--nav-hover-bg)}.nav-room-header.active{background:var(--nav-active-bg);border-right-color:var(--accent)}.nav-room-header.active .nav-room-item{color:var(--accent)}.nav-room-header:hover .nav-room-add,.nav-room-header.active .nav-room-add,.nav-room-add:focus-visible{opacity:1}.nav-room-caret,.nav-room-caret-spacer{flex-shrink:0;width:28px}.nav-room-caret{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--muted);cursor:pointer;padding:0}.nav-room-caret:hover{color:var(--text)}.nav-room-item{flex:1;min-width:0;border-right:none}.nav-room-add,.nav-thread-delete,.nav-thread-rename-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;border:none;background:transparent;color:var(--muted);cursor:pointer;padding:0;opacity:0;transition:opacity .15s,color .15s}.nav-room-header:hover .nav-room-add,.nav-thread-row:hover .nav-thread-delete,.nav-thread-row:hover .nav-thread-rename-btn,.nav-thread-row.active .nav-thread-delete,.nav-thread-row.active .nav-thread-rename-btn,.nav-room-add:focus-visible,.nav-thread-delete:focus-visible,.nav-thread-rename-btn:focus-visible{opacity:1}.nav-room-add:hover,.nav-thread-rename-btn:hover{color:var(--accent)}.nav-project-menu{position:relative;flex-shrink:0}.nav-project-menu summary{display:flex;align-items:center;justify-content:center;width:24px;height:100%;color:var(--muted);cursor:pointer;list-style:none}.nav-project-menu summary::-webkit-details-marker{display:none}.nav-project-menu summary:hover,.nav-project-menu summary:focus-visible{color:var(--accent)}.nav-project-menu-popover{position:absolute;z-index:20;top:calc(100% - 2px);right:4px;width:156px;padding:4px;border:1px solid var(--border);border-radius:6px;background:var(--panel);box-shadow:0 8px 24px #0000004d}.nav-project-menu-popover button{width:100%;padding:7px 9px;border:none;border-radius:4px;background:transparent;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.nav-project-menu-popover button:hover,.nav-project-menu-popover button:focus-visible{background:var(--nav-hover-bg)}.nav-project-menu-popover button.danger,.nav-thread-delete:hover{color:var(--danger)}.nav-thread-list{list-style:none;margin:0;padding:0 0 4px}.nav-thread-row{display:flex;align-items:stretch;width:100%;border-right:2px solid transparent;transition:background .15s,color .15s}.nav-thread-row:hover{background:var(--nav-hover-bg)}.nav-thread-row.active{background:var(--nav-active-bg);border-right-color:var(--accent)}.nav-thread-row.active .nav-thread-item{color:var(--accent)}.nav-thread-item{flex:1;min-width:0;display:flex;align-items:center;gap:8px;text-align:left;border:none;background:transparent;color:var(--muted);padding:7px 8px 7px 28px;font-size:13px;cursor:pointer;font:inherit;transition:color .15s}.nav-thread-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.nav-thread-item:hover{color:var(--text)}.nav-thread-rename{flex:1;min-width:0;border:1px solid var(--accent);border-radius:4px;background:var(--bg);color:var(--text);padding:6px 8px;font-size:13px;font:inherit;margin:4px 8px 4px 28px}.sidebar-footer{margin-top:auto;border-top:1px solid var(--border);padding:12px 16px}.sidebar-settings-btn{display:flex;width:100%;align-items:center;justify-content:center;gap:7px;margin-bottom:10px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}.sidebar-settings-btn:hover,.sidebar-settings-btn:focus-visible{color:var(--text);border-color:var(--muted);background:var(--bg)}.theme-toggle{--toggle-track: #2a2a2a;--toggle-thumb: #3a3a3a;--toggle-icon: #777;--toggle-icon-active: #e0e0e0;position:relative;display:flex;align-items:center;background:var(--toggle-track);border:1px solid var(--border);border-radius:999px;padding:3px}[data-theme=light] .theme-toggle{--toggle-track: #e8e8e8;--toggle-thumb: #ffffff;--toggle-icon: #888;--toggle-icon-active: #333}@media(prefers-color-scheme:light){:root:not([data-theme=dark]):not([data-theme=light]) .theme-toggle{--toggle-track: #e8e8e8;--toggle-thumb: #ffffff;--toggle-icon: #888;--toggle-icon-active: #333}}.theme-toggle-thumb{position:absolute;top:3px;left:3px;width:calc((100% - 6px) / 3);height:calc(100% - 6px);background:var(--toggle-thumb);border-radius:999px;box-shadow:0 1px 3px #0000001f;transition:transform .2s ease;transform:translate(calc(var(--active-index, 0) * 100%));pointer-events:none}.theme-toggle button{flex:1;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--toggle-icon);padding:7px 0;cursor:pointer;font:inherit;transition:color .15s}.theme-toggle button:hover,.theme-toggle button.active{color:var(--toggle-icon-active)}.sidebar-logout-btn{display:block;width:100%;margin-top:10px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer;text-align:center;transition:color .15s,border-color .15s,background .15s}.sidebar-logout-btn:hover{color:var(--text);border-color:var(--muted);background:var(--bg)}.sidebar-logout-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.main{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;height:100vh;overflow:hidden}.main-body{display:flex;flex:1;min-width:0;min-height:0;height:100%;overflow:hidden}.user-management{width:100%;min-width:0;overflow-y:auto;padding:32px clamp(18px,4vw,64px) 64px}.user-management-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.user-management h2,.user-management h3,.user-management p{margin-top:0}.user-management-header h2{margin-bottom:4px;font-size:24px}.user-management-header p{color:var(--muted)}.user-invite-form,.user-card{border:1px solid var(--border);border-radius:12px;background:var(--panel)}.user-invite-form{padding:20px;margin-bottom:20px}.user-form-grid,.user-edit-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.user-form-grid label,.user-edit-form>label{display:grid;gap:6px;color:var(--muted);font-size:13px}.user-form-grid input,.user-form-grid select,.user-edit-form input,.user-edit-form select{width:100%;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);padding:9px 10px;font:inherit}.user-agent-access{display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0 12px;padding:0;border:0}.user-agent-access legend{width:100%;margin-bottom:6px;color:var(--muted);font-size:13px}.user-agent-access label{display:inline-flex;align-items:center;gap:7px;font-size:13px}.user-primary-button,.user-secondary-button,.user-danger-button{border:1px solid var(--border);border-radius:8px;padding:8px 12px;font:inherit;font-size:13px;cursor:pointer}.user-primary-button{border-color:var(--accent);background:var(--accent);color:var(--bg)}.user-secondary-button{background:transparent;color:var(--text)}.user-danger-button{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:transparent;color:var(--danger)}.user-primary-button:disabled,.user-secondary-button:disabled,.user-danger-button:disabled{opacity:.45;cursor:not-allowed}.user-management-error{margin:0 0 16px}.user-list{display:grid;gap:12px}.user-card{padding:18px 20px}.user-card-summary{display:grid;grid-template-columns:minmax(180px,1.4fr) auto auto minmax(130px,1fr) minmax(180px,1fr);align-items:center;gap:12px}.user-identity{display:grid;min-width:0}.user-identity span,.user-last-login{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.user-pill{border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--muted);font-size:12px;white-space:nowrap}.user-pill--active{border-color:color-mix(in srgb,#4ade80 45%,var(--border));color:#4ade80}.user-pill--suspended,.user-delivery-failed{color:var(--danger)}.user-agent-names{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:13px}.user-delivery-failed{margin:12px 0 0;font-size:13px}.user-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.user-edit-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.user-edit-form .user-agent-access,.user-edit-form .hint,.user-edit-form .user-actions{grid-column:1 / -1}@media(max-width:920px){.user-card-summary{grid-template-columns:minmax(180px,1fr) auto auto}.user-agent-names,.user-last-login{grid-column:1 / -1}}@media(max-width:680px){.user-management{padding:20px 14px 40px}.user-form-grid,.user-edit-form,.user-card-summary{grid-template-columns:1fr}.user-management-header{align-items:center}.user-card-summary>*{grid-column:1}.user-management .hint{display:block}}.chat-column{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.chat-column--hidden{display:none}.header{flex-shrink:0;height:var(--panel-header-height);padding:0 32px;border-bottom:1px solid var(--border);background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:1rem}.header h2{margin:0;font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-project-agent{margin:1px 0 0;color:var(--muted);font-size:11px}.project-dialog-backdrop{position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#0000008f}.project-dialog{width:min(440px,100%);padding:20px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 18px 48px #0006}.project-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.project-dialog-header h2{margin:0;font-size:18px}.project-dialog-header button{border:none;background:transparent;color:var(--muted);font:inherit;font-size:22px;cursor:pointer}.project-dialog form,.project-dialog label{display:grid;gap:6px}.project-dialog form{gap:14px}.project-dialog p{margin:0;color:var(--muted)}.project-dialog .project-dialog-error{margin-bottom:14px;color:var(--danger)}.project-dialog input,.project-dialog select{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit}.project-dialog input:focus,.project-dialog select:focus{border-color:var(--accent);outline:none}.project-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.project-dialog-actions button{padding:8px 12px;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.project-dialog-actions button[type=submit]{border-color:var(--accent);background:var(--accent);color:var(--bg)}.project-dialog-actions button.danger{border-color:var(--danger);background:var(--danger);color:#fff}.project-dialog-actions button:disabled{cursor:not-allowed;opacity:.5}.layout--sidebar-collapsed .header{padding-left:52px}.messages{flex:1;min-height:0;overflow-y:auto;padding:16px 24px 8px;display:flex;flex-direction:column;gap:0}.msg{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 .5rem;padding:2px 8px;margin:0 -8px;border-radius:4px;line-height:1.45;word-break:break-word}.msg:hover{background:var(--msg-hover)}.msg-time{font-size:.75rem;color:var(--muted);flex-shrink:0;font-variant-numeric:tabular-nums}.msg-sender{font-weight:700;font-size:.9375rem;flex-shrink:0}.msg-text{flex:1 1 0;min-width:0;font-size:.9375rem}.interactive-card{margin-top:.25rem;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-elevated, var(--msg-hover))}.interactive-card-title{font-weight:700;margin-bottom:.35rem}.interactive-card-question{margin-bottom:.75rem;color:var(--text)}.interactive-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.interactive-card-btn{padding:.35rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.interactive-card-btn:hover:not(:disabled),.interactive-card-btn:focus-visible:not(:disabled){background:var(--msg-hover)}.interactive-card-btn:disabled{opacity:.6;cursor:not-allowed}.interactive-card--answered{opacity:.92}.interactive-card-selection{font-weight:600}.interactive-card-error{margin-top:.5rem;color:var(--error, #c62828);font-size:.875rem}.formatted-message{word-break:break-word}.formatted-message p{margin:.15em 0}.formatted-message p:first-child{margin-top:0}.formatted-message p:last-child{margin-bottom:0}.formatted-message h1,.formatted-message h2,.formatted-message h3,.formatted-message h4,.formatted-message h5,.formatted-message h6{font-size:1em;font-weight:700;margin:.5em 0 .25em}.formatted-message h1:first-child,.formatted-message h2:first-child,.formatted-message h3:first-child,.formatted-message h4:first-child,.formatted-message h5:first-child,.formatted-message h6:first-child{margin-top:0}.formatted-message ul,.formatted-message ol{margin:.25em 0;padding-left:1.25em}.formatted-message ul.contains-task-list{list-style:none;padding-left:0}.formatted-message li.task-list-item{list-style:none;display:flex;align-items:baseline;gap:.35em}.formatted-message li.task-list-item input[type=checkbox]{margin:0;flex-shrink:0;accent-color:var(--accent)}.formatted-message .markdown-table-wrap{overflow-x:auto;max-width:100%;margin:.35em 0}.formatted-message table{border-collapse:collapse;width:auto}.formatted-message th,.formatted-message td{border:1px solid var(--border);padding:.25em .6em;text-align:left}.formatted-message th{font-weight:600;background:var(--code-bg)}.formatted-message a{color:var(--link);text-decoration:underline;text-underline-offset:.15em}.formatted-message a:hover{text-decoration-thickness:2px}.formatted-message strong{font-weight:700}.formatted-message em{font-style:italic}.formatted-message del{text-decoration:line-through;opacity:.85}.mention{font-weight:700;border-radius:3px;padding:0 .2em}.mention-user{color:var(--mention-user-fg);background:var(--mention-user-bg)}.mention-here{color:var(--mention-here-fg);background:var(--mention-here-bg)}.inline-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875em;color:var(--inline-code-fg);background:var(--code-bg);border:1px solid var(--code-border);border-radius:4px;padding:.1em .35em}.code-block{display:block;flex-basis:100%;margin:.35rem 0;padding:.65rem .75rem;background:var(--code-bg);border:1px solid var(--code-border);border-radius:6px;overflow-x:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.45;white-space:pre}.code-block code{font-family:inherit;background:none;border:none;padding:0;border-radius:0;font-size:inherit}.composer{flex-shrink:0;border-top:1px solid var(--border);background:var(--panel);padding:12px 24px 16px}.composer-box{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:10px 10px 10px 14px}.composer-box.is-dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.composer-inbox-hint{margin:0;padding:.75rem 1rem;color:var(--muted);font-size:.875rem;border:1px solid var(--border);border-radius:12px;background:var(--bg)}.composer-engaged-chips{display:flex;flex-wrap:wrap;gap:.35rem}.composer-engaged-chip{display:inline-flex;align-items:center;gap:.1rem;font-size:.6875rem;line-height:1.15;color:var(--mention-user-fg);background:var(--mention-user-bg);border-radius:999px;padding:.05rem .2rem .05rem .45rem}.composer-engaged-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:.875rem;height:.875rem;min-width:.875rem;min-height:.875rem;padding:0;border:none;border-radius:999px;background:transparent;color:inherit;font-size:.75rem;line-height:1;cursor:pointer;opacity:.75}.composer-engaged-chip-remove:hover,.composer-engaged-chip-remove:focus-visible{opacity:1;background:color-mix(in srgb,var(--mention-user-fg) 12%,transparent)}.composer-previews{display:flex;flex-wrap:wrap;gap:.5rem}.composer-preview{position:relative;width:4.5rem;height:4.5rem}.composer-preview-file{width:auto;min-width:4.5rem;max-width:8rem;height:4.5rem;display:flex;align-items:center;justify-content:center;padding:.35rem;border-radius:8px;border:1px solid var(--border);background:var(--panel)}.composer-preview-name{font-size:.75rem;line-height:1.2;word-break:break-word;text-align:center;color:var(--text)}.composer-preview img{width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.composer-preview video{width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.composer-preview-audio{width:auto;min-width:10rem;max-width:14rem;height:auto;min-height:4.5rem;padding:.35rem;display:flex;align-items:center}.composer-preview-audio audio{width:100%;min-width:9rem}.composer-preview-text{width:auto;min-width:8rem;max-width:14rem;height:auto;min-height:4.5rem;padding:.35rem .5rem}.composer-preview-text-wrap{display:flex;flex-direction:column;gap:.2rem;width:100%;max-width:100%}.composer-preview-kind{font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.composer-preview-snippet{font-size:.6875rem;line-height:1.25;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-preview-remove{position:absolute;top:-.35rem;right:-.35rem;width:1.25rem;height:1.25rem;border:none;border-radius:999px;background:var(--panel);color:var(--text);font-size:.875rem;line-height:1;cursor:pointer;box-shadow:0 0 0 1px var(--border)}.composer-input-row{display:flex;align-items:flex-end;gap:.35rem;flex:1;min-width:0}.composer-attach{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:8px;background:transparent;color:var(--muted);padding:0;cursor:pointer}.composer-attach:hover:not(:disabled){background:var(--nav-hover-bg);color:var(--text)}.composer-attach:disabled{opacity:.35;cursor:not-allowed}.msg-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.msg-attachment-image{cursor:pointer;text-decoration:none;padding:0;border:none;background:none;font:inherit}.msg-attachment-image img{display:block;max-width:min(100%,320px);max-height:240px;border-radius:8px;border:1px solid var(--border);object-fit:contain}.msg-attachment-video{cursor:pointer;text-decoration:none;padding:0;border:none;background:none;font:inherit}.msg-attachment-video video{display:block;max-width:min(100%,320px);max-height:240px;border-radius:8px;border:1px solid var(--border);object-fit:contain}.msg-attachment-audio{display:flex;flex-direction:column;gap:.35rem;max-width:min(100%,320px);padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--panel)}.msg-attachment-audio-title{cursor:pointer;border:none;background:none;padding:0;font:inherit;font-size:.875rem;color:var(--accent);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-attachment-audio-title:hover{text-decoration:underline}.msg-attachment-audio audio{display:block;width:100%;min-width:12rem}.msg-attachment-file{cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--accent);text-decoration:none;font-family:inherit;font-size:.875rem;max-width:100%}.attachment-chip-kind{flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);padding:.1rem .35rem;border-radius:4px;background:color-mix(in srgb,var(--border) 40%,transparent)}.attachment-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.msg-attachment-file:hover{background:var(--nav-hover-bg)}.attachment-drawer{position:relative;align-self:stretch;height:100%;max-height:100%;flex:0 1 auto;min-width:0;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--panel);min-height:0;overflow:hidden}.main--drawer-open .chat-column{flex:1 1 0;min-width:0}.attachment-drawer-resize-handle{position:absolute;top:0;left:-3px;width:6px;height:100%;cursor:col-resize;touch-action:none;z-index:1}.attachment-drawer-resize-handle:hover,.attachment-drawer-resize-handle:focus-visible{background:color-mix(in srgb,var(--accent) 35%,transparent);outline:none}body.attachment-drawer-resizing{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.attachment-drawer-resizing *{cursor:col-resize!important}.attachment-drawer-header{position:relative;flex-shrink:0;height:var(--panel-header-height);display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 16px;border-bottom:1px solid var(--border)}.attachment-drawer-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;flex-shrink:0}.attachment-drawer-view-toggle-btn{border:none;background:transparent;color:var(--text-muted);padding:4px 10px;font:inherit;font-size:.8125rem;cursor:pointer}.attachment-drawer-view-toggle-btn[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--text)}.attachment-drawer-raw,.attachment-drawer-text{margin:0;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.45}.attachment-drawer-text{font-family:inherit;font-size:.9375rem}.attachment-drawer-formatted.formatted-message p+p{margin-top:1em}.attachment-drawer-code{margin:0;padding:.75rem;overflow:auto;background:var(--code-bg);border:1px solid var(--code-border);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.45}.attachment-drawer-code code{font-family:inherit;white-space:pre}.attachment-drawer-code .hljs{display:block;overflow-x:auto;padding:0;background:transparent;color:inherit}.attachment-drawer-code .hljs-comment,.attachment-drawer-code .hljs-quote{color:#7a8490;font-style:italic}.attachment-drawer-code .hljs-keyword,.attachment-drawer-code .hljs-selector-tag,.attachment-drawer-code .hljs-subst{color:#c678dd}.attachment-drawer-code .hljs-number,.attachment-drawer-code .hljs-literal,.attachment-drawer-code .hljs-variable,.attachment-drawer-code .hljs-template-variable,.attachment-drawer-code .hljs-tag .hljs-attr{color:#d19a66}.attachment-drawer-code .hljs-string,.attachment-drawer-code .hljs-doctag,.attachment-drawer-code .hljs-regexp{color:#98c379}.attachment-drawer-code .hljs-title,.attachment-drawer-code .hljs-section,.attachment-drawer-code .hljs-selector-id,.attachment-drawer-code .hljs-selector-class{color:#61afef}.attachment-drawer-code .hljs-type,.attachment-drawer-code .hljs-class .hljs-title{color:#e5c07b}.attachment-drawer-code .hljs-symbol,.attachment-drawer-code .hljs-bullet,.attachment-drawer-code .hljs-link{color:#56b6c2}.attachment-drawer-code .hljs-meta{color:#abb2bf}.attachment-drawer-code .hljs-built_in,.attachment-drawer-code .hljs-builtin-name{color:#e06c75}.attachment-drawer-csv-wrap{overflow:auto;max-width:100%}.attachment-drawer-csv{border-collapse:collapse;width:max-content;min-width:100%;font-size:.8125rem}.attachment-drawer-csv th,.attachment-drawer-csv td{border:1px solid var(--border);padding:.35rem .55rem;text-align:left;vertical-align:top;white-space:pre-wrap;word-break:break-word}.attachment-drawer-csv th{position:sticky;top:0;background:color-mix(in srgb,var(--border) 35%,var(--panel));font-weight:600}.attachment-drawer-csv tbody tr:nth-child(2n){background:color-mix(in srgb,var(--border) 18%,transparent)}.attachment-drawer-csv-empty{margin:0;color:var(--muted)}.attachment-drawer-csv-truncated{margin:0 0 .5rem;color:var(--muted);font-size:.8125rem}.attachment-drawer-json{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;line-height:1.45}.attachment-drawer-json-node{margin-left:.25rem}.attachment-drawer-json-summary{cursor:pointer;list-style:none;display:flex;gap:.5rem;align-items:baseline;padding:.1rem 0}.attachment-drawer-json-summary::-webkit-details-marker{display:none}.attachment-drawer-json-children{margin-left:1rem;border-left:1px solid var(--border);padding-left:.5rem}.attachment-drawer-json-leaf{display:flex;gap:.5rem;padding:.1rem 0;flex-wrap:wrap}.attachment-drawer-json-key{color:var(--accent)}.attachment-drawer-json-meta,.attachment-drawer-json-value{color:var(--muted)}.attachment-drawer-mdx-badge{display:inline-block;margin-left:.5rem;font-size:.6875rem;font-weight:500;color:var(--muted);vertical-align:middle}.attachment-drawer-title{margin:0;font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.attachment-drawer-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.attachment-drawer-action{display:inline-flex;align-items:center;gap:4px;padding:6px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;font:inherit}.attachment-drawer-action:hover{background:var(--nav-hover-bg);color:var(--text)}.attachment-drawer-copied{font-size:.75rem;color:var(--accent)}.attachment-drawer-body{flex:1;overflow:auto;padding:16px;min-height:0;display:flex;flex-direction:column}.attachment-drawer-status{margin:0;color:var(--text-muted)}.attachment-drawer-error{margin:0;color:var(--danger)}.attachment-drawer-embed{width:100%;flex:1 1 auto;min-height:480px;border:none;border-radius:6px;background:var(--bg)}.attachment-drawer-image{display:block;max-width:100%;height:auto;margin:0;object-fit:contain;border-radius:6px}.attachment-drawer-video{display:block;width:100%;max-width:100%;height:auto;margin:0;border-radius:6px;background:var(--bg)}.attachment-drawer-video-fallback{display:grid;gap:12px;justify-items:start}.attachment-drawer-download-fallback{border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);padding:8px 12px;cursor:pointer;font:inherit}.attachment-drawer-download-fallback:hover{background:color-mix(in srgb,var(--border) 20%,var(--panel))}.attachment-drawer-audio{display:block;width:100%;max-width:100%;margin:0}.attachment-drawer-meta{margin:0;display:grid;gap:12px}.attachment-drawer-meta dt{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 2px}.attachment-drawer-meta dd{margin:0;word-break:break-word}@media(max-width:480px)and (hover:none){.attachment-drawer{position:fixed;inset:0 0 0 auto;width:100vw!important;height:100vh;max-height:none;z-index:20;box-shadow:-4px 0 24px #00000059}.attachment-drawer-resize-handle{display:none}}.composer textarea{flex:1;min-height:1.375rem;max-height:200px;resize:none;overflow-y:auto;border:none;border-radius:0;background:transparent;color:var(--text);padding:0;font:inherit;line-height:1.375rem;white-space:pre-wrap;word-break:break-word}.composer textarea:focus{outline:none}.composer-send{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:8px;background:transparent;color:var(--accent);padding:0;cursor:pointer}.composer-send:hover:not(:disabled){background:var(--nav-hover-bg)}.composer-send:disabled{opacity:.35;cursor:not-allowed}.btn{border:none;border-radius:4px;background:var(--accent);color:#fff;padding:.5rem .85rem;font:inherit;cursor:pointer}.composer button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:transparent;border:1px solid var(--border);color:var(--text)}.auth-screen{max-width:28rem;margin:4rem auto;padding:2rem;background:var(--panel);border:1px solid var(--border);border-radius:8px}.auth-screen h1{margin:0 0 .5rem;font-size:22px;font-weight:600}.auth-screen input{width:100%;margin:.5rem 0 1rem;padding:.5rem .65rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font:inherit}.login-form{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}.login-field{display:flex;flex-direction:column;gap:.35rem;font-size:13px;color:var(--muted)}.login-field input{margin:0}.login-submit,.login-provider-btn{width:100%;margin-top:.5rem;padding:.55rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--accent);color:#fff;font:inherit;cursor:pointer}.login-provider-btn{background:var(--bg);color:var(--text)}.login-provider-btn+.login-provider-btn{margin-top:.5rem}.login-divider{text-align:center;color:var(--muted);margin:1.25rem 0;font-size:13px}.login-providers,.auth-card{display:flex;flex-direction:column}.auth-card .hint{padding:0}.auth-link-button{align-self:flex-start;padding:.35rem 0;border:0;background:transparent;color:var(--accent);font:inherit;font-size:.875rem;cursor:pointer;text-decoration:underline;text-underline-offset:.2em}.auth-link-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.error{color:var(--danger);font-size:.875rem}.hint{color:var(--muted);font-size:.875rem;padding:0 20px 12px;margin:0}.composer-error{flex-shrink:0;padding:0 32px 12px;margin:0}@media(max-width:439px){.sidebar{width:var(--sidebar-collapsed-width)}.sidebar h1,.sidebar-header h1{height:0;margin:0;padding:0;border:none;overflow:hidden;opacity:0}.sidebar-header{justify-content:center;padding:0 8px}.sidebar-hide-btn{margin:0 auto}.nav-section-label,.nav-item-label,.nav-project-agent,.nav-thread-list,.nav-room-add,.nav-project-menu,.nav-section-add,.hint{display:none}.nav-item{justify-content:center;padding:10px 0;gap:0}.nav-room-item{position:relative}.nav-unread-badge{position:absolute;top:6px;right:6px;margin-left:0;min-width:14px;padding:0 4px;font-size:9px;line-height:14px}.sidebar-footer{padding:12px 8px}.main{flex:1;min-width:0}@media(hover:none){.sidebar:focus-within{width:var(--sidebar-width);box-shadow:4px 0 24px #00000059}.sidebar:focus-within .sidebar-header h1{height:auto;opacity:1;overflow:visible}.sidebar:focus-within .sidebar-header{justify-content:space-between;padding:0 12px 0 16px}.sidebar:focus-within .nav-section-label,.sidebar:focus-within .nav-item-label,.sidebar:focus-within .nav-project-agent,.sidebar:focus-within .nav-thread-list,.sidebar:focus-within .hint{display:block}.sidebar:focus-within .nav-room-add{display:flex}.sidebar:focus-within .nav-project-menu{display:block}.sidebar:focus-within .nav-section-add{display:flex}.sidebar:focus-within .nav-item-label{display:inline}.sidebar:focus-within .nav-item{justify-content:flex-start;padding:10px 16px;gap:10px}.sidebar:focus-within .sidebar-footer{padding:12px 16px}}@media(hover:hover){.sidebar:is(:hover,:focus-within){width:var(--sidebar-width);box-shadow:4px 0 24px #00000059}.sidebar:is(:hover,:focus-within) .sidebar-header h1{height:auto;opacity:1;overflow:visible}.sidebar:is(:hover,:focus-within) .sidebar-header{justify-content:space-between;padding:0 12px 0 16px}.sidebar:is(:hover,:focus-within) .nav-section-label,.sidebar:is(:hover,:focus-within) .nav-item-label,.sidebar:is(:hover,:focus-within) .nav-project-agent,.sidebar:is(:hover,:focus-within) .nav-thread-list,.sidebar:is(:hover,:focus-within) .hint{display:block}.sidebar:is(:hover,:focus-within) .nav-room-add{display:flex}.sidebar:is(:hover,:focus-within) .nav-project-menu{display:block}.sidebar:is(:hover,:focus-within) .nav-section-add{display:flex}.sidebar:is(:hover,:focus-within) .nav-item-label{display:inline}.sidebar:is(:hover,:focus-within) .nav-item{justify-content:flex-start;padding:10px 16px;gap:10px}.sidebar:is(:hover,:focus-within) .sidebar-footer{padding:12px 16px}}}@media(max-width:768px){.header,.messages,.composer,.composer-error{padding-left:16px;padding-right:16px}.layout--sidebar-collapsed .header{padding-left:52px}}.msg--live{opacity:.92;align-items:flex-start}.msg--live .typing-bubble{align-self:center;margin-top:.2em}.msg-live-activity{display:inline-flex;align-items:flex-start;gap:6px;color:var(--muted);font-size:.875rem;line-height:1.4;max-width:100%;animation:live-activity-pulse 1.8s ease-in-out infinite}.msg-live-activity-icon{display:inline-flex;flex-shrink:0;margin-top:.15em;color:var(--muted);opacity:.9}.msg-live-activity-text{white-space:pre-wrap;word-break:break-word;min-width:0}.msg-live-activity-text--collapsed{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.msg-live-activity-toggle{flex-shrink:0;align-self:flex-end;margin-top:.1em;padding:0 4px;border:none;background:none;color:var(--accent);font:inherit;font-size:.8em;cursor:pointer;white-space:nowrap;opacity:.85}.msg-live-activity-toggle:hover,.msg-live-activity-toggle:focus-visible{opacity:1;text-decoration:underline}.msg-live-activity .formatted-message--live{color:inherit;font-size:inherit;line-height:inherit;min-width:0;word-break:break-word}.msg-live-activity .formatted-message--live p{margin:.15em 0}.msg-live-activity .formatted-message--live p:first-child{margin-top:0}.msg-live-activity .formatted-message--live p:last-child{margin-bottom:0}.msg-live-activity .formatted-message--live pre,.msg-live-activity .formatted-message--live .code-block{font-size:.8em;opacity:.95}.typing-bubble{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--msg-hover) 85%,var(--accent) 15%);border:1px solid var(--border);min-height:22px;align-self:center}.typing-bubble span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:typing-dot 1.2s ease-in-out infinite}.typing-bubble span:nth-child(2){animation-delay:.15s}.typing-bubble span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes live-activity-pulse{0%,to{opacity:.55}50%{opacity:.95}}
