.shell[data-v-03f8d4b1]{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:100dvh;height:100vh;height:100dvh;overflow:hidden}.sidebar[data-v-03f8d4b1]{display:grid;grid-template-rows:auto 1fr auto;background-color:var(--sidebar-bg);border-right:1px solid var(--border);height:100vh;height:100dvh;overflow:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:100}.sidebar-header[data-v-03f8d4b1]{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-2);flex-shrink:0}.brand-group[data-v-03f8d4b1]{display:flex;align-items:center;gap:10px}.brand-logo-mini[data-v-03f8d4b1]{width:24px;height:24px;background:var(--text);color:var(--bg);display:grid;place-items:center;border-radius:6px;font-weight:700;font-size:13px}.brand-name[data-v-03f8d4b1]{font-weight:600;font-size:15px;letter-spacing:-.01em}.sidebar-scroll[data-v-03f8d4b1]{overflow-y:auto;min-height:0;padding:var(--space-1);display:flex;flex-direction:column;gap:var(--space-3)}.sidebar-section[data-v-03f8d4b1]{display:flex;flex-direction:column;gap:2px}.section-label[data-v-03f8d4b1]{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 var(--space-1) 8px}.nav-item[data-v-03f8d4b1]{display:flex;align-items:center;gap:12px;padding:10px var(--space-2);border-radius:8px;color:var(--text);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;font-size:14px;transition:background .15s}.nav-item[data-v-03f8d4b1]:hover{background:var(--bg-muted)}.nav-item.active[data-v-03f8d4b1]{background:var(--bg-muted);font-weight:500}.new-chat-btn[data-v-03f8d4b1]{background:var(--bg-muted);border:1px solid var(--border);margin-bottom:4px;font-weight:500}.new-chat-btn[data-v-03f8d4b1]:hover{background:var(--bg-elevated-strong)}.item-icon[data-v-03f8d4b1]{color:var(--muted);flex-shrink:0}.conversation-title[data-v-03f8d4b1]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item-wrapper[data-v-03f8d4b1]{position:relative}.conv-menu-btn[data-v-03f8d4b1]{display:none;flex-shrink:0;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.conv-menu-btn[data-v-03f8d4b1]:hover,.conv-menu-btn--open[data-v-03f8d4b1]{background:var(--bg-muted);color:var(--text)}.conversation-item:hover .conv-menu-btn[data-v-03f8d4b1],.conversation-item.active .conv-menu-btn[data-v-03f8d4b1]{display:flex}.conv-menu-dropdown[data-v-03f8d4b1]{position:absolute;right:0;top:calc(100% + 2px);z-index:300;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #0000001f;min-width:140px;padding:4px;display:flex;flex-direction:column;gap:1px}.conv-menu-item[data-v-03f8d4b1]{display:flex;align-items:center;gap:8px;padding:8px 10px;background:transparent;border:none;border-radius:6px;font-size:13px;color:var(--text);cursor:pointer;text-align:left;width:100%;transition:background .15s}.conv-menu-item[data-v-03f8d4b1]:hover{background:var(--bg-muted)}.conv-menu-item--danger[data-v-03f8d4b1]{color:var(--danger)}.conv-menu-item--danger[data-v-03f8d4b1]:hover{background:#ef44441a}.rename-input[data-v-03f8d4b1]{flex:1;background:var(--bg);border:1px solid var(--focus-border, var(--accent));border-radius:4px;padding:2px 6px;font-size:14px;color:var(--text);outline:none;min-width:0}.sidebar-empty[data-v-03f8d4b1]{font-size:13px;color:var(--muted);padding:var(--space-2);text-align:center;opacity:.7}.persona-item[data-v-03f8d4b1]{justify-content:flex-start}.persona-avatar[data-v-03f8d4b1]{width:24px;height:24px;background:var(--accent);color:#fff;display:grid;place-items:center;border-radius:6px;font-weight:700;font-size:12px;flex-shrink:0}.persona-name[data-v-03f8d4b1]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.persona-check[data-v-03f8d4b1]{color:var(--accent);flex-shrink:0}.persona-item--flash[data-v-03f8d4b1]{animation:persona-sidebar-flash-03f8d4b1 .7s ease-out}@keyframes persona-sidebar-flash-03f8d4b1{0%{background:var(--accent-soft);box-shadow:0 0 0 2px var(--focus-border)}60%{background:var(--accent-soft);box-shadow:0 0 0 2px var(--focus-border)}to{background:var(--bg-muted);box-shadow:none}}.sidebar-footer[data-v-03f8d4b1]{padding:var(--space-2);padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);background:var(--bg-subtle);flex-shrink:0}.user-row[data-v-03f8d4b1]{display:flex;align-items:center;gap:8px;padding:4px;min-width:0}.user-avatar[data-v-03f8d4b1]{width:32px;height:32px;background:var(--accent);color:#fff;display:grid;place-items:center;border-radius:50%;font-weight:600;font-size:14px}.user-meta[data-v-03f8d4b1]{flex:1;min-width:0}.user-name[data-v-03f8d4b1]{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-workspace[data-v-03f8d4b1]{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.footer-actions[data-v-03f8d4b1]{display:flex;align-items:center;gap:0px;flex-shrink:0;margin-left:auto}.footer-icon-btn[data-v-03f8d4b1]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:var(--muted);cursor:pointer;transition:background .15s,color .15s;text-decoration:none;flex-shrink:0}.footer-icon-btn[data-v-03f8d4b1]:hover{background:var(--bg-muted);color:var(--text)}.footer-icon-logout-btn[data-v-03f8d4b1]:hover{color:var(--danger, #ef4444)}.main-panel[data-v-03f8d4b1]{display:flex;flex-direction:column;background:var(--bg);height:100vh;overflow:hidden}.main-content[data-v-03f8d4b1]{flex:1;min-height:0;display:flex;flex-direction:column}.chat-main-header[data-v-03f8d4b1]{height:56px;display:flex;align-items:center;padding:0 var(--space-2);border-bottom:1px solid var(--border);background:var(--bg-elevated);box-shadow:var(--shadow-sm);z-index:10}.sidebar-close-btn[data-v-03f8d4b1]{display:none;background:none;border:none;cursor:pointer;padding:8px;border-radius:4px;color:var(--muted)}.sidebar-close-btn[data-v-03f8d4b1]:hover{background:var(--bg-muted)}.sidebar-toggle-btn[data-v-03f8d4b1]{display:none;background:none;border:none;cursor:pointer;padding:8px;border-radius:4px;color:var(--muted)}.sidebar-toggle-btn[data-v-03f8d4b1]:hover{background:var(--bg-muted)}.header-center[data-v-03f8d4b1]{flex:1;min-width:0;display:flex;justify-content:center;overflow:hidden;font-weight:600;font-size:14px}.header-brand-title[data-v-03f8d4b1]{display:block;font-size:16px;font-weight:700;letter-spacing:-.02em;color:var(--text)}.header-conversation-title[data-v-03f8d4b1]{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.header-actions[data-v-03f8d4b1]{display:flex;align-items:center;gap:8px;flex-shrink:0}.header-new-chat-btn[data-v-03f8d4b1]{display:flex;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:var(--muted);align-items:center;justify-content:center;flex-shrink:0}.header-new-chat-btn[data-v-03f8d4b1]:hover{background:var(--bg-muted);color:var(--text)}.header-action-btn[data-v-03f8d4b1]{display:none;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:var(--muted);flex-shrink:0;text-decoration:none}.header-action-btn[data-v-03f8d4b1]:hover{background:var(--bg-muted);color:var(--text)}.header-logout-btn[data-v-03f8d4b1]:hover{color:var(--danger, #ef4444)}@media(max-width:980px){.main-panel[data-v-03f8d4b1]{height:100dvh}.shell[data-v-03f8d4b1]{grid-template-columns:minmax(0,1fr)}.sidebar[data-v-03f8d4b1]{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100dvh;transform:translate(-100%);z-index:200}.sidebar.open[data-v-03f8d4b1]{transform:translate(0)}.sidebar-overlay[data-v-03f8d4b1]{display:none;position:fixed;inset:0;background:#0006;z-index:150}.sidebar-overlay.open[data-v-03f8d4b1]{display:block}.sidebar-close-btn[data-v-03f8d4b1],.sidebar-toggle-btn[data-v-03f8d4b1]{display:flex}.chat-main-header[data-v-03f8d4b1]{height:calc(52px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(4px,env(safe-area-inset-left,0px));padding-right:max(4px,env(safe-area-inset-right,0px));position:sticky;top:0;background:var(--bg-elevated);border-bottom:1px solid var(--border);box-shadow:0 1px 0 var(--border),0 2px 6px #0000000f}.header-brand-title[data-v-03f8d4b1]{display:block;font-size:17px;font-weight:700;letter-spacing:-.03em}.header-conversation-title[data-v-03f8d4b1]{font-size:16px;letter-spacing:-.02em}.sidebar-toggle-btn[data-v-03f8d4b1],.header-new-chat-btn[data-v-03f8d4b1]{color:var(--text)}.header-admin-btn[data-v-03f8d4b1],.header-logout-btn[data-v-03f8d4b1]{display:flex;color:var(--text)}}.composer-form[data-v-d6195f84]{display:flex;flex-direction:column;width:100%}.composer-shell[data-v-d6195f84]{display:flex;align-items:flex-end;background:var(--bg-elevated);border:1.5px solid var(--border-strong);border-radius:26px;padding:8px 10px;gap:8px;box-shadow:var(--shadow-md);transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s ease;min-height:52px}.composer-shell[data-v-d6195f84]:focus-within{border-color:var(--focus-border);box-shadow:var(--shadow-md),0 0 0 3px var(--focus-ring)}.has-content.composer-shell[data-v-d6195f84]{border-color:var(--border-strong)}.composer-side[data-v-d6195f84]{display:flex;align-items:center;gap:4px;flex-shrink:0;padding-bottom:2px}.composer-center[data-v-d6195f84]{flex:1;display:flex;flex-direction:column;min-width:0}.composer-file-input[data-v-d6195f84]{display:none}.composer-icon-btn[data-v-d6195f84]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:transparent;color:var(--muted);cursor:pointer;transition:background .2s,color .15s}.composer-icon-btn[data-v-d6195f84]:hover:not(:disabled){background:var(--bg-muted);color:var(--text)}.composer-icon-btn.active[data-v-d6195f84]{color:var(--danger);background:var(--accent-soft)}.composer-input[data-v-d6195f84]{width:100%;background:transparent;border:none;outline:none;padding:8px 4px;font-size:16px;line-height:1.5;color:var(--text);resize:none;max-height:220px;font-family:inherit}.composer-send-btn[data-v-d6195f84]{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--text);color:var(--bg);border:none;border-radius:50%;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin-left:4px;flex-shrink:0}.composer-send-btn[data-v-d6195f84]:disabled{background:var(--border);color:var(--muted);cursor:not-allowed;opacity:.5}.composer-send-btn.is-stop[data-v-d6195f84]{background:var(--bg-elevated);color:var(--text);border:1.5px solid var(--border-strong)}.composer-send-btn.is-stop[data-v-d6195f84]:hover{background:var(--bg-muted);filter:none;transform:none}.composer-send-btn[data-v-d6195f84]:hover:not(:disabled){transform:scale(1.05);background:var(--text);filter:brightness(1.1)}.composer-send-btn[data-v-d6195f84]:active:not(:disabled){transform:scale(.92)}.composer-attachments[data-v-d6195f84]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:0 12px}.attachment-chip[data-v-d6195f84]{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-muted);border:1px solid var(--border);border-radius:12px;font-size:13px;font-weight:500;transition:border-color .2s}.attachment-name[data-v-d6195f84]{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove[data-v-d6195f84]{border:none;background:transparent;padding:2px;cursor:pointer;color:var(--muted);display:flex;align-items:center;border-radius:50%;transition:background .2s,color .15s}.attachment-remove[data-v-d6195f84]:hover{background:var(--bg-elevated-strong);color:var(--danger)}.composer-error[data-v-d6195f84]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--danger);margin-top:8px;padding:0 14px;animation:slideDown-d6195f84 .2s ease-out}@keyframes slideDown-d6195f84{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.composer-status[data-v-d6195f84]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--accent);margin-top:8px;padding:0 14px;animation:slideDown-d6195f84 .2s ease-out}.animate-spin[data-v-d6195f84]{animation:spin-d6195f84 1s linear infinite}@keyframes spin-d6195f84{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.voice-recording-bar[data-v-d6195f84]{display:flex;align-items:center;gap:8px;padding:8px 4px;min-height:36px;transition:color .2s}.voice-dot[data-v-d6195f84]{width:10px;height:10px;border-radius:50%;background:var(--danger);flex-shrink:0;animation:pulse 1.5s infinite}.voice-label[data-v-d6195f84]{font-size:14px;color:var(--muted);transition:color .2s;-webkit-user-select:none;user-select:none}.voice-recording-bar.will-cancel .voice-dot[data-v-d6195f84]{animation:none}.voice-recording-bar.will-cancel .voice-label[data-v-d6195f84]{color:var(--danger);font-weight:500}.hint-touch[data-v-d6195f84]{display:none}.hint-mouse[data-v-d6195f84]{display:inline}.recording-stop-btn[data-v-d6195f84]{color:var(--text)}.recording-stop-btn[data-v-d6195f84]:hover:not(:disabled){background:var(--bg-muted);color:var(--text)}.composer-icon-btn.will-cancel[data-v-d6195f84]{color:var(--danger);background:#ef44441f;background:color-mix(in srgb,var(--danger) 12%,transparent)}@media(hover:none)and (pointer:coarse){.hint-touch[data-v-d6195f84]{display:inline}.hint-mouse[data-v-d6195f84],.recording-stop-btn[data-v-d6195f84]{display:none}}@media(max-width:640px){.composer-shell[data-v-d6195f84]{border-radius:22px;padding:6px 8px}}.switch-persona-badge[data-v-f5b0567b]{width:32px;height:32px;background:var(--accent);color:#fff;display:grid;place-items:center;border-radius:8px;font-weight:700;font-size:14px;flex-shrink:0}.switch-persona-badge--handoff[data-v-f5b0567b]{background:#4f46e5d9}.switch-icon-wrap[data-v-f5b0567b]{display:grid;place-items:center}.switch-notification-body[data-v-f5b0567b]{display:flex;flex-direction:column;gap:2px}.switch-notification-header[data-v-f5b0567b]{display:flex;align-items:center;gap:5px}.switch-persona-desc[data-v-f5b0567b]{font-size:.74rem;color:var(--muted);opacity:.85;line-height:1.3}.message-row[data-v-f5b0567b]{display:flex;gap:var(--chat-space-3);width:100%}.message-row.user[data-v-f5b0567b]{justify-content:flex-end}.avatar-container[data-v-f5b0567b]{flex-shrink:0;width:36px;padding-top:2px}.avatar[data-v-f5b0567b]{width:36px;height:36px;background:var(--accent-soft);border:1px solid var(--border);border-radius:var(--chat-radius-avatar);display:grid;place-items:center;color:var(--accent)}.message-card[data-v-f5b0567b]{max-width:80%;display:flex;flex-direction:column;gap:var(--space-1)}.user-bubble[data-v-f5b0567b]{background:var(--chat-bubble-user);padding:12px 16px;border-radius:var(--chat-radius-bubble-user);color:var(--text);border:1px solid var(--chat-bubble-user-border)}.assistant-body[data-v-f5b0567b]{background:var(--chat-bubble-assistant);border:1px solid var(--chat-divider);border-radius:var(--chat-radius-bubble-assistant);padding:var(--chat-space-4) var(--chat-space-5);box-shadow:var(--shadow-md);flex:1;min-width:0;max-width:none;gap:var(--chat-space-2)}.message-header-row[data-v-f5b0567b]{display:flex;align-items:center;justify-content:space-between;gap:var(--chat-space-2);margin-bottom:var(--chat-space-2)}.message-author[data-v-f5b0567b]{font-weight:600;font-size:13px;color:var(--accent);letter-spacing:.01em}.message-time[data-v-f5b0567b]{font-size:11px;color:var(--muted)}.user-message-footer[data-v-f5b0567b]{display:flex;justify-content:flex-end;margin-top:4px}.message-content[data-v-f5b0567b]{font-size:15px;line-height:1.6;overflow-wrap:break-word;word-break:break-word}.assistant-prose[data-v-f5b0567b]{color:var(--text);white-space:normal}.assistant-prose[data-v-f5b0567b] p{margin-bottom:.8em}.assistant-prose[data-v-f5b0567b] p:last-child{margin-bottom:0}.assistant-prose[data-v-f5b0567b] ul,.assistant-prose[data-v-f5b0567b] ol{margin-top:.4em;margin-bottom:.8em;padding-left:1.5em}.assistant-prose[data-v-f5b0567b] li{margin-bottom:.3em}.message-meta-row[data-v-f5b0567b]{margin-top:var(--chat-space-2);padding-top:var(--chat-space-2);border-top:1px solid var(--chat-divider);font-size:11px;color:var(--muted);display:flex;gap:var(--chat-space-2);align-items:center}.message-citations[data-v-f5b0567b]{margin-top:var(--chat-space-3);padding-top:var(--chat-space-3);border-top:1px solid var(--chat-divider)}.citations-header[data-v-f5b0567b]{display:flex;align-items:center;gap:5px;margin-bottom:8px}.citations-label[data-v-f5b0567b]{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.03em;text-transform:uppercase}.citations-list[data-v-f5b0567b]{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.citation-item[data-v-f5b0567b]{display:flex;align-items:flex-start;gap:6px}.citation-num[data-v-f5b0567b]{flex-shrink:0;min-width:18px;font-size:11px;font-weight:700;color:var(--muted, #6b7280);padding-top:6px;text-align:right}.citation-content[data-v-f5b0567b]{min-width:0;flex:1}.citation-link[data-v-f5b0567b]{display:inline-flex;align-items:center;gap:6px;padding:3px 6px;border-radius:6px;text-decoration:none;color:inherit;transition:background .15s;max-width:100%}.citation-link[data-v-f5b0567b]:hover{background:var(--bg-hover, #e8eaf0)}.citation-favicon[data-v-f5b0567b]{flex-shrink:0;width:14px;height:14px;border-radius:2px;object-fit:contain}.citation-title[data-v-f5b0567b]{font-size:13px;font-weight:500;color:var(--accent, #6366f1);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.citation-url[data-v-f5b0567b]{font-size:11px;color:var(--muted, #6b7280);margin-top:1px;padding-left:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assistant-prose[data-v-f5b0567b] .cite-ref{display:inline;vertical-align:super;font-size:.65em;line-height:1;margin:0 1px}.assistant-prose[data-v-f5b0567b] .cite-ref-link{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 3px;background:var(--accent-soft, #ede9fe);color:var(--accent, #6366f1);border-radius:4px;font-size:10px;font-weight:700;text-decoration:none;transition:background .15s}.assistant-prose[data-v-f5b0567b] .cite-ref-link:hover{background:var(--accent, #6366f1);color:#fff}.separator[data-v-f5b0567b]{opacity:.3}@media(max-width:768px){.message-row[data-v-f5b0567b]{gap:var(--chat-space-2)}.avatar-container[data-v-f5b0567b]{width:28px}.avatar[data-v-f5b0567b]{width:28px;height:28px;border-radius:10px}.message-card[data-v-f5b0567b]{max-width:92%}.assistant-body[data-v-f5b0567b]{padding:var(--chat-space-3) var(--chat-space-4)}.message-content[data-v-f5b0567b]{font-size:16px;line-height:1.8;overflow-wrap:break-word}}.share-modal-backdrop[data-v-dcc18f3c]{position:fixed;inset:0;z-index:1000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px}.share-modal[data-v-dcc18f3c]{background:var(--bg-surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:16px;width:100%;max-width:480px;box-shadow:0 20px 60px #0000002e;overflow:hidden}.share-modal-header[data-v-dcc18f3c]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border, #e5e7eb)}.share-modal-title[data-v-dcc18f3c]{font-size:16px;font-weight:600;color:var(--text-primary, #111);margin:0}.share-modal-close[data-v-dcc18f3c]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted, #6b7280);border-radius:8px;cursor:pointer;transition:background .15s}.share-modal-close[data-v-dcc18f3c]:hover{background:var(--bg-hover, #f3f4f6)}.share-modal-body[data-v-dcc18f3c]{padding:20px 24px 24px;display:flex;flex-direction:column;gap:16px}.share-modal-desc[data-v-dcc18f3c]{font-size:14px;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.share-mode-tabs[data-v-dcc18f3c]{display:flex;gap:8px;background:var(--bg-subtle, #f3f4f6);border-radius:10px;padding:4px}.share-mode-tab[data-v-dcc18f3c]{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .15s,color .15s}.share-mode-tab.active[data-v-dcc18f3c]{background:var(--bg-surface, #fff);color:var(--text-primary, #111);box-shadow:0 1px 4px #00000014}.share-mode-desc[data-v-dcc18f3c]{font-size:13px;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.share-password-section[data-v-dcc18f3c]{display:flex;flex-direction:column;gap:8px}.share-password-label[data-v-dcc18f3c]{font-size:13px;font-weight:500;color:var(--text-primary, #111)}.share-password-input-wrap[data-v-dcc18f3c]{display:flex;align-items:center;border:1px solid var(--border, #e5e7eb);border-radius:8px;overflow:hidden;background:var(--bg-surface, #fff);transition:border-color .15s}.share-password-input-wrap[data-v-dcc18f3c]:focus-within{border-color:var(--focus-border, #6366f1);box-shadow:0 0 0 3px var(--focus-ring, rgba(99, 102, 241, .15))}.share-password-input[data-v-dcc18f3c]{flex:1;padding:9px 12px;border:none;outline:none;font-size:14px;color:var(--text-primary, #111);background:transparent}.share-password-toggle[data-v-dcc18f3c]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text-muted, #6b7280);cursor:pointer;flex-shrink:0}.share-generate-btn[data-v-dcc18f3c]{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:var(--accent, #6366f1);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .15s}.share-generate-btn[data-v-dcc18f3c]:disabled{opacity:.5;cursor:not-allowed}.share-generate-btn[data-v-dcc18f3c]:not(:disabled):hover{opacity:.88}.share-link-section[data-v-dcc18f3c]{display:flex;flex-direction:column;gap:8px}.share-link-box[data-v-dcc18f3c]{display:flex;align-items:center;border:1px solid var(--border, #e5e7eb);border-radius:8px;overflow:hidden;background:var(--bg-subtle, #f3f4f6)}.share-link-input[data-v-dcc18f3c]{flex:1;padding:9px 12px;border:none;outline:none;font-size:13px;color:var(--text-primary, #111);background:transparent;min-width:0;text-overflow:ellipsis}.share-link-copy-btn[data-v-dcc18f3c]{display:flex;align-items:center;gap:5px;padding:9px 14px;border:none;border-left:1px solid var(--border, #e5e7eb);background:var(--bg-surface, #fff);color:var(--accent, #6366f1);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s}.share-link-copy-btn[data-v-dcc18f3c]:hover{background:var(--bg-hover, #f3f4f6)}.share-link-password-hint[data-v-dcc18f3c]{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted, #6b7280)}.share-revoke-btn[data-v-dcc18f3c]{align-self:flex-start;background:none;border:none;color:#ef4444;font-size:13px;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.share-revoke-btn[data-v-dcc18f3c]:hover{color:#dc2626}.share-error[data-v-dcc18f3c]{font-size:13px;color:#ef4444;margin:0}@keyframes spin-dcc18f3c{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin[data-v-dcc18f3c]{animation:spin-dcc18f3c 1s linear infinite}.chat-layout[data-v-0d244ae0]{display:flex;flex-direction:column;height:100%;position:relative;background:var(--bg)}.message-stream[data-v-0d244ae0]{flex:1;overflow-y:auto;scroll-behavior:smooth;padding-bottom:40px}.message-stream-inner[data-v-0d244ae0]{max-width:var(--chat-max-width);margin:0 auto;padding:var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:var(--space-4);width:100%}.chat-empty-state[data-v-0d244ae0]{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--space-6) var(--space-4);max-width:800px;margin:0 auto;text-align:center}.empty-brand[data-v-0d244ae0]{margin-bottom:var(--space-2)}.brand-logo-large[data-v-0d244ae0]{width:48px;height:48px;background:var(--text);color:var(--bg);display:grid;place-items:center;border-radius:12px;font-weight:700;font-size:24px}.empty-title[data-v-0d244ae0]{font-size:clamp(24px,5vw,32px);font-weight:600;margin-bottom:var(--space-1);color:var(--text);letter-spacing:-.02em}.empty-intro[data-v-0d244ae0]{font-size:16px;color:var(--muted);margin-bottom:var(--space-3);max-width:540px;line-height:1.6}.suggestion-grid[data-v-0d244ae0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-2);width:100%}.suggestion-card[data-v-0d244ae0]{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:16px;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.suggestion-card[data-v-0d244ae0]:hover{background:var(--bg-muted);border-color:var(--border-strong);transform:translateY(-2px)}.suggestion-icon[data-v-0d244ae0]{width:32px;height:32px;background:var(--bg-muted);color:var(--text);display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.suggestion-text[data-v-0d244ae0]{flex:1;font-size:14px;font-weight:500;color:var(--text);line-height:1.4;margin-right:20px}.suggestion-arrow[data-v-0d244ae0]{position:absolute;top:16px;right:16px;color:var(--muted);opacity:0;transition:opacity .2s,transform .2s}.suggestion-card:hover .suggestion-arrow[data-v-0d244ae0]{opacity:1;transform:translate(2px,-2px)}.chat-input-area[data-v-0d244ae0]{padding:0 var(--space-4) var(--space-3);position:relative;z-index:5}.chat-input-container[data-v-0d244ae0]{max-width:var(--chat-max-width);margin:0 auto;width:100%}.chat-footer-note[data-v-0d244ae0]{font-size:12px;color:var(--muted);text-align:center;margin-top:var(--space-1)}.scroll-to-bottom-btn[data-v-0d244ae0]{position:absolute;right:var(--space-4);bottom:80px;width:32px;height:32px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .3s;box-shadow:var(--shadow-md)}.scroll-to-bottom-btn--visible[data-v-0d244ae0]{opacity:1}@media(max-width:980px){.chat-input-area[data-v-0d244ae0]{position:fixed;bottom:0;left:0;right:0;z-index:20;padding-top:var(--space-2);padding-right:max(var(--space-2),env(safe-area-inset-right,0px));padding-bottom:max(var(--space-3),env(safe-area-inset-bottom,0px));padding-left:max(var(--space-2),env(safe-area-inset-left,0px));background:var(--bg-elevated-strong);border-top:1px solid var(--border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.message-stream[data-v-0d244ae0]{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}.scroll-to-bottom-btn[data-v-0d244ae0]{position:fixed;bottom:calc(112px + env(safe-area-inset-bottom,0px));right:var(--space-3)}}@media(max-width:768px){.message-stream-inner[data-v-0d244ae0]{padding:var(--space-1) var(--space-2) var(--space-2);gap:var(--space-2)}.chat-empty-state[data-v-0d244ae0]{justify-content:flex-start;padding:var(--space-2) var(--space-2)}.brand-logo-large[data-v-0d244ae0]{width:40px;height:40px;font-size:20px;border-radius:10px}.empty-title[data-v-0d244ae0]{font-size:22px}.empty-intro[data-v-0d244ae0]{font-size:14px;margin-bottom:var(--space-2)}.suggestion-grid[data-v-0d244ae0]{grid-template-columns:repeat(2,1fr);gap:8px}.suggestion-card[data-v-0d244ae0]{padding:12px;border-radius:12px}.suggestion-arrow[data-v-0d244ae0]{display:none}.suggestion-text[data-v-0d244ae0]{font-size:13px;margin-right:0}}.scroll-to-bottom-btn[data-v-0d244ae0]:hover{box-shadow:var(--shadow-lg)}.scroll-to-bottom-btn[data-v-0d244ae0]:active{transform:translateY(0) scale(.9);transition-duration:.07s}@media(max-width:480px){.scroll-to-bottom-btn[data-v-0d244ae0]{right:1rem}}.shared-page[data-v-87d66ad8]{min-height:100dvh;background:var(--bg, #f2f4f8);display:flex;flex-direction:column}.shared-header[data-v-87d66ad8]{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--bg-surface, #fff);border-bottom:1px solid var(--border, #e5e7eb);position:sticky;top:0;z-index:10}.shared-brand[data-v-87d66ad8]{display:flex;align-items:center;gap:10px}.brand-logo-mini[data-v-87d66ad8]{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}.brand-name[data-v-87d66ad8]{font-size:15px;font-weight:600;color:var(--text-primary, #111)}.shared-meta[data-v-87d66ad8]{display:flex;align-items:center;gap:8px}.shared-badge[data-v-87d66ad8]{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted, #6b7280);background:var(--bg-subtle, #f3f4f6);border:1px solid var(--border, #e5e7eb);border-radius:20px;padding:3px 10px}.shared-password-screen[data-v-87d66ad8]{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 16px}.shared-password-card[data-v-87d66ad8]{background:var(--bg-surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:16px;padding:36px 32px;width:100%;max-width:400px;text-align:center;box-shadow:0 4px 24px #0000000f;display:flex;flex-direction:column;align-items:center;gap:12px}.shared-password-icon[data-v-87d66ad8]{width:56px;height:56px;border-radius:14px;background:var(--bg-subtle, #f3f4f6);display:flex;align-items:center;justify-content:center;color:var(--text-muted, #6b7280)}.shared-password-title[data-v-87d66ad8]{font-size:18px;font-weight:600;color:var(--text-primary, #111);margin:0}.shared-password-desc[data-v-87d66ad8]{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.shared-password-form[data-v-87d66ad8]{width:100%;display:flex;flex-direction:column;gap:10px;margin-top:4px}.shared-password-input-wrap[data-v-87d66ad8]{display:flex;align-items:center;border:1px solid var(--border, #e5e7eb);border-radius:8px;overflow:hidden;background:var(--bg-surface, #fff)}.shared-password-input-wrap[data-v-87d66ad8]:focus-within{border-color:var(--focus-border, #6366f1);box-shadow:0 0 0 3px var(--focus-ring, rgba(99, 102, 241, .15))}.shared-password-input[data-v-87d66ad8]{flex:1;padding:10px 12px;border:none;outline:none;font-size:14px;color:var(--text-primary, #111);background:transparent}.shared-password-toggle[data-v-87d66ad8]{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;background:transparent;color:var(--text-muted, #6b7280);cursor:pointer;flex-shrink:0}.shared-password-error[data-v-87d66ad8]{font-size:13px;color:#ef4444;margin:0;text-align:left}.shared-password-submit[data-v-87d66ad8]{width:100%;padding:10px;background:var(--accent, #6366f1);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:opacity .15s}.shared-password-submit[data-v-87d66ad8]:disabled{opacity:.5;cursor:not-allowed}.shared-error-screen[data-v-87d66ad8]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px 16px;text-align:center}.shared-error-icon[data-v-87d66ad8]{color:var(--text-muted, #6b7280)}.shared-error-title[data-v-87d66ad8]{font-size:20px;font-weight:600;color:var(--text-primary, #111);margin:0}.shared-error-desc[data-v-87d66ad8]{font-size:14px;color:var(--text-secondary, #6b7280);margin:0;max-width:360px}.shared-loading[data-v-87d66ad8]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:14px;color:var(--text-muted, #6b7280)}.shared-loading-icon[data-v-87d66ad8]{color:var(--accent, #6366f1)}.shared-main[data-v-87d66ad8]{flex:1;max-width:780px;width:100%;margin:0 auto;padding:28px 20px 48px;display:flex;flex-direction:column;gap:20px}.shared-conversation-header[data-v-87d66ad8]{padding-bottom:16px;border-bottom:1px solid var(--border, #e5e7eb)}.shared-conversation-title[data-v-87d66ad8]{font-size:22px;font-weight:700;color:var(--text-primary, #111);margin:0}.shared-messages[data-v-87d66ad8]{display:flex;flex-direction:column;gap:20px}.shared-message[data-v-87d66ad8]{display:flex;gap:12px;align-items:flex-start}.shared-message--user[data-v-87d66ad8]{flex-direction:row-reverse}.shared-message-avatar[data-v-87d66ad8]{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}.shared-message--assistant .shared-message-avatar[data-v-87d66ad8]{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff}.shared-message--user .shared-message-avatar[data-v-87d66ad8]{background:var(--bg-subtle, #f3f4f6);color:var(--text-secondary, #6b7280)}.shared-message-bubble[data-v-87d66ad8]{max-width:80%;display:flex;flex-direction:column;gap:8px}.shared-message-content[data-v-87d66ad8]{background:var(--bg-surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.65;color:var(--text-primary, #111);word-break:break-word}.shared-message--user .shared-message-content[data-v-87d66ad8]{background:var(--chat-bubble-user-bg, #eff6ff);border-color:var(--chat-bubble-user-border, #bfdbfe)}.shared-message-citations[data-v-87d66ad8]{margin-top:10px;padding-top:10px;border-top:1px solid var(--border, #e5e7eb)}.citations-header[data-v-87d66ad8]{display:flex;align-items:center;gap:5px;margin-bottom:8px;color:var(--text-muted, #6b7280)}.citations-label[data-v-87d66ad8]{font-size:11px;font-weight:600;color:var(--text-muted, #6b7280);letter-spacing:.03em;text-transform:uppercase}.citations-list[data-v-87d66ad8]{display:flex;flex-wrap:wrap;gap:6px}.citation-card[data-v-87d66ad8]{display:flex;align-items:flex-start;gap:7px;padding:7px 10px;background:var(--bg, #f2f4f8);border:1px solid var(--border, #e5e7eb);border-radius:10px;text-decoration:none;color:inherit;min-width:0;max-width:220px;transition:background .15s,border-color .15s}.citation-card[data-v-87d66ad8]:hover{background:var(--bg-hover, #e8eaf0);border-color:var(--accent, #6366f1)}.citation-num[data-v-87d66ad8]{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--accent-soft, #ede9fe);color:var(--accent, #6366f1);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px}.citation-info[data-v-87d66ad8]{display:flex;align-items:flex-start;gap:5px;min-width:0}.citation-favicon[data-v-87d66ad8]{flex-shrink:0;width:14px;height:14px;border-radius:2px;margin-top:2px;object-fit:contain}.citation-text[data-v-87d66ad8]{min-width:0}.citation-title[data-v-87d66ad8]{font-size:12px;font-weight:500;color:var(--text-primary, #111827);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.citation-domain[data-v-87d66ad8]{font-size:11px;color:var(--text-muted, #6b7280);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shared-assistant-prose[data-v-87d66ad8] p{margin-bottom:.8em}.shared-assistant-prose[data-v-87d66ad8] p:last-child{margin-bottom:0}.shared-assistant-prose[data-v-87d66ad8] ul,.shared-assistant-prose[data-v-87d66ad8] ol{margin-top:.4em;margin-bottom:.8em;padding-left:1.5em}.shared-assistant-prose[data-v-87d66ad8] li{margin-bottom:.3em}.shared-assistant-prose[data-v-87d66ad8] h1,.shared-assistant-prose[data-v-87d66ad8] h2,.shared-assistant-prose[data-v-87d66ad8] h3{margin-top:1em;margin-bottom:.5em;font-weight:600}.shared-assistant-prose[data-v-87d66ad8] code{background:var(--bg, #f2f4f8);padding:1px 4px;border-radius:4px;font-size:.9em}.shared-assistant-prose[data-v-87d66ad8] pre{background:var(--bg, #f2f4f8);padding:10px 14px;border-radius:8px;overflow-x:auto;margin:.8em 0}.shared-assistant-prose[data-v-87d66ad8] pre code{background:none;padding:0}.shared-assistant-prose[data-v-87d66ad8] .cite-ref{display:inline;vertical-align:super;font-size:.65em;line-height:1;margin:0 1px}.shared-assistant-prose[data-v-87d66ad8] .cite-ref-link{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 3px;background:var(--accent-soft, #ede9fe);color:var(--accent, #6366f1);border-radius:4px;font-size:10px;font-weight:700;text-decoration:none;transition:background .15s}.shared-assistant-prose[data-v-87d66ad8] .cite-ref-link:hover{background:var(--accent, #6366f1);color:#fff}.shared-footer[data-v-87d66ad8]{padding-top:16px;border-top:1px solid var(--border, #e5e7eb)}.shared-footer-note[data-v-87d66ad8]{font-size:12px;color:var(--text-muted, #9ca3af);margin:0;text-align:center}@keyframes spin-87d66ad8{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin[data-v-87d66ad8]{animation:spin-87d66ad8 1s linear infinite}:root{--chat-bg: var(--bg);--chat-surface: var(--bg-elevated);--chat-surface-strong: var(--bg-elevated-strong);--chat-surface-muted: var(--bg-muted);--chat-divider: var(--border);--chat-divider-strong: var(--border-strong);--chat-text: var(--text);--chat-text-muted: var(--muted);--chat-bubble-user: var(--chat-bubble-user-bg);--chat-bubble-assistant: var(--bg-elevated);--chat-bubble-system: var(--bg-muted);--chat-space-1: 4px;--chat-space-2: 8px;--chat-space-3: 12px;--chat-space-4: 16px;--chat-space-5: 20px;--chat-space-6: 24px;--chat-radius-bubble-user: 20px 20px 4px 20px;--chat-radius-bubble-assistant: 24px;--chat-radius-bubble-system: 999px;--chat-radius-composer: 26px;--chat-radius-avatar: 14px;--chat-radius-chip: 20px;--chat-radius-code: 8px;--chat-radius-code-inline: 4px}:root{color-scheme:light dark;--bg: #f2f4f8;--bg-subtle: #f8fafb;--bg-elevated: #ffffff;--bg-elevated-strong: #ffffff;--bg-muted: #e8ecf1;--sidebar-bg: #f8fafb;--border: rgba(0, 0, 0, .09);--border-strong: rgba(0, 0, 0, .15);--text: #0f172a;--muted: #64748b;--accent: #2563eb;--accent-soft: rgba(37, 99, 235, .09);--danger: #ef4444;--chat-bubble-user-bg: #eef2ff;--chat-bubble-user-border: rgba(99, 102, 241, .18);--focus-border: rgba(37, 99, 235, .4);--focus-ring: rgba(37, 99, 235, .08);--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-6: 48px;--space-8: 64px;--sidebar-width: 260px;--chat-max-width: 900px;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .06), 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .08), 0 2px 4px -1px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 20px -4px rgba(0, 0, 0, .1), 0 4px 8px -2px rgba(0, 0, 0, .06);--shadow-xl: 0 20px 32px -6px rgba(0, 0, 0, .12), 0 8px 16px -4px rgba(0, 0, 0, .07)}@media(prefers-color-scheme:dark){:root{--bg: #0d0f14;--bg-subtle: #151820;--bg-elevated: #1c1f28;--bg-elevated-strong: #232630;--bg-muted: #2a2d38;--sidebar-bg: #151820;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .14);--text: #f1f5f9;--muted: #94a3b8;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .13);--danger: #ef4444;--chat-bubble-user-bg: rgba(99, 102, 241, .14);--chat-bubble-user-border: rgba(99, 102, 241, .22);--focus-border: rgba(59, 130, 246, .5);--focus-ring: rgba(59, 130, 246, .1);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .4), 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -2px rgba(0, 0, 0, .5), 0 2px 4px -1px rgba(0, 0, 0, .35);--shadow-lg: 0 10px 20px -4px rgba(0, 0, 0, .6), 0 4px 8px -2px rgba(0, 0, 0, .45);--shadow-xl: 0 20px 32px -6px rgba(0, 0, 0, .7), 0 8px 16px -4px rgba(0, 0, 0, .55)}}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{border:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:16px;padding:13px 15px;background:var(--bg-muted);color:var(--text);outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}input:focus,textarea:focus,select:focus{border-color:#0a84ff59;box-shadow:0 0 0 4px #0a84ff1f;background:var(--bg-elevated-strong)}label{display:flex;flex-direction:column;gap:8px}h1,h2,h3,p{margin:0}.small{font-size:.84rem}.muted,.hint,.brand-subtitle,.conversation-meta,.usage-label,.sidebar-section-label,.eyebrow{color:var(--muted)}.eyebrow,.sidebar-section-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}.glass-card,.brand-surface,.panel,.admin-header,.auth-panel,.auth-shell,.usage-card,.empty-state{background:var(--bg-elevated);border:1px solid var(--border);box-shadow:var(--shadow-md)}.shell-legacy{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.sidebar-legacy{display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:20px;background:var(--sidebar-bg);border-right:1px solid var(--border)}.sidebar-top-legacy{display:flex;flex-direction:column;gap:16px;min-height:0}.main-panel{padding:0;min-width:0;display:flex;flex-direction:column}.chat-layout{padding:0}.brand-card{display:flex;align-items:center;gap:14px;padding:14px;border-radius:24px}.brand-card.large{margin-bottom:8px}.brand-copy{min-width:0}.brand-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#0a84ff,#6aa9ff 55%,#a855f7);color:#fff;font-weight:700;letter-spacing:.04em;box-shadow:inset 0 1px #ffffff47,0 12px 24px #0a84ff47}.brand-title{font-size:1.02rem;font-weight:700}.primary-button,.ghost-link,.tab-button,.suggestion-card{border-radius:18px;padding:12px 16px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.primary-button:hover,.ghost-link:hover,.tab-button:hover,.suggestion-card:hover,.conversation-item:hover,.composer-button:hover{transform:translateY(-1px)}.primary-button:active:not(:disabled),.ghost-link:active:not(:disabled),.tab-button:active:not(:disabled),.suggestion-card:active,.conversation-item:active{transform:scale(.97);transition-duration:.07s}.composer-button:active:not(:disabled){transform:scale(.9);transition-duration:.07s}@media(hover:none)and (pointer:coarse){.primary-button:hover,.ghost-link:hover,.tab-button:hover,.suggestion-card:hover,.conversation-item:hover,.composer-button:hover{transform:none}.icon-button:hover{background:transparent}}.primary-button{background:linear-gradient(180deg,#1890ff,#0a84ff);color:#fff;font-weight:600;box-shadow:0 14px 28px #0a84ff47}.primary-button:disabled,.ghost-link:disabled,.composer-button:disabled{opacity:.65;cursor:not-allowed;transform:none}.full-width{width:100%}.ghost-link,.tab-button,.suggestion-card{background:var(--bg-muted);color:var(--text);border:1px solid var(--border)}.soft-pill,.tenant-pill,.usage-badge{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:8px 12px;border-radius:999px;background:var(--bg-muted);border:1px solid var(--border);width:fit-content}.footer-user-name{font-weight:600}.conversation-list{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto;padding-right:4px}.conversation-item{text-align:left;padding:14px;border-radius:20px;background:transparent;color:var(--text);border:1px solid transparent;cursor:pointer}.conversation-item.active{background:var(--bg-elevated-strong);border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.conversation-title{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-empty{padding:10px 4px}.footer-actions,.header-actions,.panel-title-row,.tab-switcher,.usage-top-row,.meter-label-row,.composer-toolbar,.composer-meta{display:flex;gap:10px;align-items:center}.footer-actions,.header-actions{flex-wrap:wrap}.admin-page{display:flex;flex-direction:column;gap:20px;min-height:calc(100vh - 48px);max-width:1280px;margin:0 auto;padding:24px}.chat-layout{display:flex;flex-direction:column;position:relative;flex:1;min-height:0}.page-title{font-size:clamp(1.5rem,2.2vw,2rem);letter-spacing:-.03em}.admin-header,.panel,.auth-panel,.auth-shell,.usage-card,.empty-state{border-radius:28px;padding:20px}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0;flex-wrap:wrap}.message-stream{flex:1;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:auto}.message-stream-inner{max-width:840px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--chat-space-6);padding:var(--chat-space-4) var(--chat-space-6) 80px}.message-row{display:flex;gap:14px;align-items:flex-start;width:100%}.message-row.user{flex-direction:row-reverse}.message-row.system{justify-content:center;margin:8px 0}.system-notification{display:flex;align-items:center;gap:var(--chat-space-2);padding:var(--chat-space-2) var(--chat-space-4);border-radius:var(--chat-radius-bubble-system);background:var(--chat-bubble-system);border:1px solid var(--chat-divider);font-size:.82rem;color:var(--chat-text-muted);animation:persona-switch-in .35s cubic-bezier(.34,1.56,.64,1) both}@keyframes persona-switch-in{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.system-notification.handoff-notification{background:#4f46e514;border-color:#4f46e540;color:var(--accent);font-weight:500}.system-icon{color:var(--accent);opacity:.8}.avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:var(--chat-radius-avatar);background:var(--chat-surface-strong);color:var(--chat-text);font-size:.78rem;font-weight:700}.avatar.assistant{color:var(--accent)}.message-card{max-width:min(78%,760px);padding:var(--chat-space-4) 18px;border-radius:var(--chat-radius-bubble-assistant)}.user-bubble{max-width:min(72%,520px);padding:var(--chat-space-3) var(--chat-space-4);border-radius:var(--chat-radius-bubble-user);background:var(--chat-bubble-user);border:1px solid var(--chat-divider)}.message-row.assistant .message-card{background:var(--chat-bubble-assistant);max-width:100%}.message-role{font-size:.78rem;font-weight:700;margin-bottom:8px;color:var(--muted)}.message-content{line-height:1.6;overflow-wrap:break-word;word-break:break-word}.message-meta-row{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:.75rem;letter-spacing:.01em}.message-meta-row .separator{opacity:.4}.empty-state{display:grid;gap:18px;min-height:min(50vh,520px);place-content:center;text-align:center}.empty-state-copy{display:grid;gap:10px}.suggestion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.suggestion-card{min-height:68px;font-weight:600}.composer-container{padding:12px var(--chat-space-4) max(env(safe-area-inset-bottom,0px),12px);background:var(--bg);border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center}.composer-form{max-width:840px;width:100%}.composer-shell{display:flex;align-items:flex-end;gap:4px;border-radius:var(--chat-radius-composer);padding:6px;background:var(--chat-surface-strong);border:1.5px solid var(--chat-divider-strong)}.composer-label{font-size:.82rem;color:var(--muted)}.model-select{width:auto;min-width:160px;padding:8px 12px;border-radius:999px;background:var(--bg-elevated-strong)}.composer-main{display:flex;align-items:flex-end;gap:12px}.composer-input{flex:1;min-height:36px;max-height:180px;resize:none;border:none;border-radius:0;padding:10px 6px;background:transparent;overflow-y:auto;outline:none;color:var(--text);line-height:1.5}.composer-button{border-radius:50%;width:44px;height:44px;padding:0;display:grid;place-items:center;background:linear-gradient(180deg,#1890ff,#0a84ff);color:#fff;flex-shrink:0;box-shadow:0 2px 8px #0a84ff26;transition:transform .18s ease,box-shadow .18s ease}.animate-spin{animation:spin .9s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.typing-indicator{display:flex;align-items:center;gap:5px;padding:4px 0}.typing-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--muted);animation:typing-bounce 1.4s ease-in-out infinite}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.waiting-timer{font-size:.78rem;color:var(--muted);margin-left:4px;font-variant-numeric:tabular-nums}.streaming-indicator{display:flex;align-items:center;gap:4px;padding:4px 0}.streaming-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--muted);animation:streaming-pulse 1.2s ease-in-out infinite}.streaming-dot:nth-child(1){animation-delay:0s}.streaming-dot:nth-child(2){animation-delay:.2s}.streaming-dot:nth-child(3){animation-delay:.4s}@keyframes streaming-pulse{0%,60%,to{opacity:.3;transform:scale(.85)}30%{opacity:.8;transform:scale(1)}}.auth-layout{min-height:100vh;display:grid;place-items:center;padding:28px}.auth-shell{width:min(1120px,100%);display:grid;grid-template-columns:1.15fr .85fr;gap:0;overflow:hidden;padding:0}.auth-hero{padding:34px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;background:radial-gradient(circle at top left,rgba(10,132,255,.18),transparent 26%),linear-gradient(180deg,rgba(255,255,255,.16),transparent 60%)}.auth-hero-copy{display:grid;gap:14px;max-width:560px}.auth-hero-copy h1{font-size:clamp(2rem,3vw,3.25rem);line-height:1.02;letter-spacing:-.05em}.auth-feature-list{display:grid;gap:12px}.auth-feature-item{display:grid;gap:4px;padding:16px 18px;border-radius:20px;background:#ffffff42;border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px #fff3}.auth-panel{width:100%}.auth-panel-compact{display:flex;flex-direction:column;justify-content:center;gap:20px;padding:34px;border-radius:0;border:0;border-left:1px solid var(--border);background:var(--bg-elevated-strong);box-shadow:none}.auth-copy,.auth-form,.stack-gap{display:grid;gap:14px}.grid.two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.panel-inner-card{margin-top:8px}.table-wrap{overflow:auto;background:linear-gradient(to right,var(--bg-elevated) 30%,transparent) center left,linear-gradient(to left,var(--bg-elevated) 30%,transparent) center right,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.07),transparent) center left,radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.07),transparent) center right;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--border)}th{font-size:.84rem;color:var(--muted);font-weight:600}tr.selected,tr:hover{background:#0a84ff0f}.checkbox-row{flex-direction:row;align-items:center}.checkbox-row input{width:auto}.usage-card{min-width:320px}.usage-big{font-size:1.2rem;font-weight:700;margin-top:4px}.meter-label-row{justify-content:space-between;margin-top:10px}.meter-bar{margin-top:8px;height:10px;background:#7f7f7f1f;border-radius:999px;overflow:hidden}.meter-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#0a84ff,#6aa9ff,#a855f7)}.token-breakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.breakdown-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.breakdown-label{font-size:.78rem;color:var(--muted)}.breakdown-value{font-size:.84rem;font-weight:600}.error-text{color:var(--danger);font-size:.875rem}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{padding-right:44px}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;padding:4px;color:var(--muted);display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}.password-toggle:hover{color:var(--text)}.password-toggle:focus-visible{outline:2px solid var(--focus-border);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring)}@media(max-width:1100px){.auth-shell{grid-template-columns:1fr}.auth-panel-compact{border-left:0;border-top:1px solid var(--border);border-radius:0 0 28px 28px}.suggestion-grid{grid-template-columns:1fr}}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0006;z-index:40;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:opacity .3s ease;opacity:0;pointer-events:none}.sidebar-overlay.open{display:block;opacity:1;pointer-events:auto}.mobile-header{display:none}.icon-button{background:transparent;color:var(--text);padding:8px;border-radius:12px;cursor:pointer;display:grid;place-items:center;border:1px solid transparent;width:44px;height:44px;transition:background .15s ease,transform .1s ease}.icon-button:hover{background:var(--bg-muted)}.icon-button:active{background:var(--bg-muted);transform:scale(.88);transition-duration:.07s}.mobile-brand{font-weight:700;font-size:1.05rem;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:980px){.shell{display:block}.sidebar{position:fixed;top:0;bottom:0;left:0;width:min(310px,calc(100vw - 56px));z-index:50;transform:translate(-100%);transition:transform .3s cubic-bezier(.16,1,.3,1);border-right:1px solid var(--border);background:var(--bg-elevated);padding-top:max(20px,env(safe-area-inset-top,0px));padding-bottom:max(20px,env(safe-area-inset-bottom,0px));padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.sidebar.open{transform:translate(0);box-shadow:var(--shadow-xl)}.mobile-header{display:flex;align-items:center;gap:4px;height:calc(56px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);padding-left:max(8px,env(safe-area-inset-left,0px));padding-right:max(8px,env(safe-area-inset-right,0px));border-bottom:1px solid var(--border);background:var(--bg-elevated);z-index:30;position:sticky;top:0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.mobile-brand{font-size:1rem}.mobile-brand-label{font-size:.75rem;color:var(--muted);font-weight:500;letter-spacing:.02em}.main-panel{padding:0}.chat-layout{height:calc(100dvh - 52px - env(safe-area-inset-top,0px));min-height:0;padding:0}.admin-page{padding:16px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));gap:16px}.grid.two-columns{grid-template-columns:1fr}.usage-card{min-width:0}.admin-header{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%;justify-content:flex-end}}@media(max-width:720px){.auth-layout{padding:16px}.sidebar{padding-top:max(16px,env(safe-area-inset-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.panel,.admin-header,.auth-hero,.auth-panel-compact,.composer-shell,.sidebar-footer,.brand-card,.empty-state{border-radius:22px}th,td{padding:10px 8px;font-size:.83rem}th{font-size:.78rem}input,textarea,select{font-size:max(16px,1em)}.message-card{max-width:90%}.user-bubble{max-width:85%;border-radius:18px 18px 4px}.composer-container{padding:10px max(12px,env(safe-area-inset-right,0px)) max(env(safe-area-inset-bottom,0px),12px) max(12px,env(safe-area-inset-left,0px))}.message-stream-inner{padding:12px max(16px,env(safe-area-inset-right,0px)) calc(80px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));gap:24px}.message-card{padding:14px 16px}}.composer-toolbar-group{display:flex;align-items:center;gap:10px}.message-role-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.chat-overview-grid{display:grid;grid-template-columns:minmax(320px,360px) minmax(0,1fr);gap:20px}.info-panel,.info-grid,.stats-grid{display:grid;gap:16px}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card,.stat-card{padding:18px;border-radius:22px;background:var(--bg-muted);border:1px solid var(--border)}.info-key{font-size:.82rem;color:var(--muted);margin-bottom:8px}.info-value,.stat-value{font-size:1.05rem;font-weight:700;letter-spacing:-.02em}.stat-value{font-size:clamp(1.5rem,2vw,2rem);margin:6px 0 8px}@media(max-width:980px){.chat-overview-grid,.info-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.stats-grid{grid-template-columns:1fr}}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-nav-title{font-size:1rem;font-weight:600}.calendar-nav-btn{background:var(--bg-muted);border:1px solid var(--border);border-radius:12px;padding:6px 14px;cursor:pointer;color:var(--text);font-size:.88rem;transition:background .15s ease,border-color .15s ease}.calendar-nav-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-weekday{text-align:center;font-size:.7rem;color:var(--muted);padding:6px 2px;font-weight:600}.calendar-day{min-height:48px;border-radius:8px;padding:4px 5px;border:1px solid var(--border);cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:border-color .15s ease,box-shadow .15s ease}.calendar-day:hover:not(.calendar-day--other-month){border-color:var(--accent)}.calendar-day--other-month{opacity:.22;cursor:default;pointer-events:none}.calendar-day--selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent-soft)}.calendar-day-num{font-size:.75rem;font-weight:600;line-height:1}.calendar-day--today .calendar-day-num{color:var(--accent)}.calendar-day-usage{font-size:.62rem;font-weight:500;line-height:1.2;color:var(--muted)}.calendar-day--has-usage .calendar-day-usage{color:inherit}.calendar-summary{margin-top:20px;padding:16px;border-radius:16px;background:var(--bg-muted);border:1px solid var(--border)}.calendar-summary-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.calendar-summary-title{font-weight:600;font-size:.95rem}.calendar-clear-btn{font-size:.78rem;color:var(--muted);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.calendar-clear-btn:hover{color:var(--text)}.calendar-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.calendar-stat{padding:12px;border-radius:12px;background:var(--bg-elevated);border:1px solid var(--border)}.calendar-stat-label{font-size:.72rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.calendar-stat-value{font-size:1rem;font-weight:700;letter-spacing:-.02em}@media(max-width:720px){.calendar-day{min-height:46px;padding:4px 5px}.calendar-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.calendar-grid{gap:1px}.calendar-day{min-height:38px;padding:3px 4px;border-radius:6px}.calendar-day-num{font-size:.7rem}.calendar-day-usage{display:none}}@media(max-width:600px){.auth-layout{padding:16px;align-items:flex-start}.auth-shell{border-radius:24px}.auth-feature-list{display:none}.auth-hero-copy h1{font-size:1.6rem;letter-spacing:-.03em}.auth-hero{padding:24px;gap:16px}.auth-panel-compact{padding:24px}}
