@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--bg: #f7f7fb;--surface: #ffffff;--text: #111318;--muted: #6f7280;--primary: #5364e8;--primary-hover: #4353d6;--primary-soft: #eef0ff;--secondary: #2f5f8f;--border: #e4e6ee;--focus-ring: rgba(83, 100, 232, .12);--focus-border: #8d97fb;--chip-bg: #f5f7ff;--chip-border: #c9d0f6;--shadow-interactive: 0 1px 3px rgba(16, 24, 40, .08);--shadow-interactive-hover: 0 3px 10px rgba(16, 24, 40, .12);--shadow-overlay: 0 10px 24px rgba(16, 24, 40, .14)}[data-theme=ocean]{--bg: #f3f8fb;--surface: #ffffff;--text: #13202c;--muted: #5f7282;--primary: #0f7db8;--primary-hover: #0c6798;--primary-soft: #e7f4fb;--secondary: #0f5b86;--border: #d7e6ef;--focus-ring: rgba(15, 125, 184, .16);--focus-border: #4da1cb;--chip-bg: #edf8fd;--chip-border: #b9dceb}[data-theme=forest]{--bg: #f4f8f4;--surface: #ffffff;--text: #162218;--muted: #627468;--primary: #2f8f63;--primary-hover: #277551;--primary-soft: #e8f6ef;--secondary: #356b52;--border: #dce9e1;--focus-ring: rgba(47, 143, 99, .16);--focus-border: #63ad87;--chip-bg: #eef9f3;--chip-border: #c2e6d1}[data-theme=sunset]{--bg: #fff7f2;--surface: #ffffff;--text: #2a1b14;--muted: #8b6a5b;--primary: #cf5f2f;--primary-hover: #ac4f27;--primary-soft: #ffece3;--secondary: #9f4d2c;--border: #f1ddd3;--focus-ring: rgba(207, 95, 47, .18);--focus-border: #dc8661;--chip-bg: #fff3ec;--chip-border: #efcbb9}[data-theme=slate]{--bg: #f4f6fa;--surface: #ffffff;--text: #101726;--muted: #667187;--primary: #2f5fb5;--primary-hover: #274f96;--primary-soft: #e9f0ff;--secondary: #39507c;--border: #dbe2f1;--focus-ring: rgba(47, 95, 181, .16);--focus-border: #5f86cc;--chip-bg: #edf3ff;--chip-border: #bfd0f2}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Plus Jakarta Sans,Segoe UI,Tahoma,sans-serif;background:var(--bg);min-height:100vh;color:var(--text)}.layout{display:flex;min-height:100dvh}.sidebar{width:260px;position:sticky;top:0;height:100dvh;align-self:stretch;display:flex;flex-direction:column;background:#ffffffe0;border-right:1px solid rgba(0,0,0,.06);box-shadow:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:28px 20px;transition:width .2s ease,padding .2s ease;overflow:hidden}.logo{font-size:22px;font-weight:700;margin-bottom:48px;color:var(--text)}.logo .subtitle{font-size:11.5px;font-weight:400;color:var(--muted);margin-top:3px;letter-spacing:.01em}.nav{display:flex;flex-direction:column;gap:4px}.sidebar-recent{margin-top:18px;min-height:0;display:flex;flex-direction:column;gap:10px}.sidebar-recent-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7a8094;padding:0 8px}.sidebar-recent-empty{font-size:12.5px;line-height:1.4;color:var(--muted);padding:0 8px}.sidebar-recent-list{list-style:none;display:grid;gap:6px;max-height:240px;overflow-y:auto;padding-right:4px}.sidebar-recent-item{width:100%;border:1px solid transparent;background:transparent;border-radius:10px;color:inherit;text-align:left;font:inherit;padding:9px 10px;display:grid;gap:3px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.sidebar-recent-item:hover,.sidebar-recent-item:focus-visible{background:var(--primary-soft);border-color:var(--focus-border);outline:none}.sidebar-recent-item.active{background:var(--primary-soft);border-color:var(--focus-border)}.sidebar-recent-item-title{font-size:13px;font-weight:600;color:#2a3351;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-recent-item-date{font-size:11.5px;color:#737b92}.sidebar-footer{margin-top:auto;padding-top:16px;display:grid;gap:10px}.sidebar-preferences-btn{width:100%;min-height:44px;border-radius:10px;border:1px solid rgba(20,25,40,.1);background:#fff;color:#2a3351;font:inherit;font-size:14px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease,transform .14s ease}.sidebar-preferences-btn:hover,.sidebar-preferences-btn:focus-visible{background:var(--primary-soft);border-color:var(--focus-border);box-shadow:0 2px 6px var(--focus-ring);transform:translateY(-1px)}.sidebar-preferences-icon{font-size:15px;line-height:1;color:var(--primary)}.sidebar-terms-link{justify-self:center;border:none;background:transparent;color:#5d6882;font:inherit;font-size:13px;font-weight:500;text-decoration:underline;text-decoration-color:#5d68828c;text-underline-offset:3px;cursor:pointer;padding:2px 4px;transition:color .14s ease,text-decoration-color .14s ease}.sidebar-terms-link:hover,.sidebar-terms-link:focus-visible{color:#2f3d73;text-decoration-color:#2f3d73}.nav-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:11px 14px;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer;text-align:left;font-family:inherit;font-size:14.5px;font-weight:500;color:var(--muted);display:flex;align-items:center;gap:10px;transition:background .15s ease,color .15s ease,border-color .15s ease}.nav-item:hover:not(.active){background:var(--primary-soft);color:var(--text)}.nav-item .nav-icon{font-size:16px;line-height:1;flex-shrink:0;opacity:.75}.nav-item.active{background:var(--primary-soft);border-color:var(--focus-border);color:#20224a;font-weight:600}.nav-item.active .nav-icon{opacity:1;color:var(--primary)}.main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 16%,rgba(83,100,232,.09),transparent 38%),var(--bg)}.preferences-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#11131838;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:20}.preferences-panel{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;background:var(--surface);border:none;box-shadow:none;transform:translate(100%);transition:transform .22s ease;z-index:30;pointer-events:none;overflow:hidden}.preferences-panel.is-open{transform:translate(0);pointer-events:auto}.preferences-backdrop.is-open{opacity:1;pointer-events:auto}.preferences-shell{display:flex;flex-direction:column;height:100%;min-height:0;background:radial-gradient(circle at top left,rgba(83,100,232,.08),transparent 30%),radial-gradient(circle at top right,rgba(47,143,99,.05),transparent 24%),var(--surface)}.preferences-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.preferences-title{font-size:26px;line-height:1.15;font-weight:700;letter-spacing:-.02em}.preferences-close{width:40px;height:40px;border-radius:12px;border:1px solid rgba(20,25,40,.08);background:var(--surface);color:#455065;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .14s ease,border-color .14s ease,transform .14s ease;flex-shrink:0;font-size:16px}.preferences-close:hover,.preferences-close:focus-visible{background:#f4f6ff;border-color:#cfd4ff;transform:translateY(-1px)}.preferences-panel-body{flex:1;min-height:0;overflow-y:auto;padding:20px 28px 24px;display:flex;flex-direction:column;gap:14px;overscroll-behavior:contain}.preferences-header-inline{padding-bottom:8px}.preferences-form{display:grid;gap:14px;padding-bottom:0}.terms-modal-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:clamp(16px,3.2vw,28px);background:#11131873;opacity:0;pointer-events:none;transition:opacity .18s ease}.terms-modal-layer.is-open{opacity:1;pointer-events:auto}.terms-modal{width:min(980px,100%);max-height:min(86dvh,900px);border-radius:clamp(16px,2vw,24px);border:1px solid rgba(20,25,40,.12);background:radial-gradient(circle at top right,rgba(83,100,232,.12),transparent 28%),#fff;box-shadow:0 24px 48px #090f1e38;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.terms-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(18px,2.4vw,26px) clamp(18px,2.8vw,32px);border-bottom:1px solid rgba(20,25,40,.08)}.terms-modal-title{margin:0;font-size:clamp(22px,2.4vw,32px);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:#1f2942}.terms-modal-close{width:42px;height:42px;border-radius:12px;border:1px solid rgba(20,25,40,.1);background:#fff;color:#46516a;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease}.terms-modal-close:hover,.terms-modal-close:focus-visible{background:#f4f6ff;border-color:#cfd4ff;transform:translateY(-1px)}.terms-modal-close-icon{font-size:16px;line-height:1}.terms-modal-content{overflow-y:auto;padding:clamp(18px,2.8vw,34px);display:grid;gap:14px;color:#2f3a54}.terms-modal-content p{margin:6px 0;font-size:clamp(15px,1.3vw,17px);line-height:1.7}.terms-modal-content li{font-size:clamp(15px,1.3vw,17px)}.terms-modal-content ol :is(ol,ul){margin-left:12px}.terms-modal-content ol :is(ol,ul) li{line-height:1.7}.terms-modal-link{background:none;border:none;padding:0;color:#2563eb;cursor:pointer;font-size:inherit;font-family:inherit;text-decoration:underline}.terms-modal-link:hover,.terms-modal-link:focus-visible{color:#1d4ed8;outline:none}.clear-data-modal{width:min(560px,100%);max-height:min(80dvh,520px)}.clear-data-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:10px}.clear-data-modal-action{min-height:42px;border-radius:10px;border:1px solid transparent;padding:0 14px;font:inherit;font-weight:600;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.clear-data-modal-action--cancel{background:#fff;border-color:#1419281f;color:#2f3a54}.clear-data-modal-action--cancel:hover,.clear-data-modal-action--cancel:focus-visible{background:#f5f7fb}.clear-data-modal-action--confirm{background:#c02f1d;color:#fff}.clear-data-modal-action--confirm:hover,.clear-data-modal-action--confirm:focus-visible{background:#9d2719}.prefs-section{border:1px solid rgba(20,25,40,.09);border-radius:18px;background:#fff;box-shadow:none;overflow:clip}.prefs-section--accent{border-color:#5364e82e;box-shadow:none}.prefs-section-title{display:block;font-size:15px;font-weight:700;color:var(--text)}.prefs-section-desc{margin-top:4px;font-size:13px;line-height:1.45;color:var(--muted)}.prefs-section-body{padding:16px;display:grid;gap:14px}.prefs-primary-title{font-size:16px;font-weight:700;color:var(--text)}.prefs-primary-copy{margin-top:4px;font-size:13px;line-height:1.5;color:var(--muted)}.prefs-group{border:0;padding:0;min-width:0;display:grid;gap:10px}.prefs-legend{font-size:13px;font-weight:700;color:#1d2437;margin-bottom:2px}.prefs-control{width:100%;min-height:44px;border-radius:14px;border:1px solid var(--border);background:#fff;color:var(--text);font:inherit;padding:11px 14px;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.prefs-control:focus-visible{outline:none;border-color:var(--focus-border);box-shadow:0 0 0 4px var(--focus-ring)}.prefs-choice-grid{display:grid;gap:10px}.prefs-choice-grid--cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.choice-card{position:relative;min-height:44px}.choice-card input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.choice-card-body{position:relative;min-height:44px;border:1px solid var(--border);border-radius:14px;background:#fff;padding:12px 14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .14s ease}.choice-card-title{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--text)}.choice-card-subtitle{font-size:12px;line-height:1.35;color:var(--muted)}.choice-card input:focus-visible+.choice-card-body{border-color:var(--focus-border);box-shadow:0 0 0 4px var(--focus-ring)}.choice-card input:checked+.choice-card-body{border-color:var(--focus-border);background:var(--primary-soft);box-shadow:0 0 0 1px var(--focus-ring)}.choice-card input:checked+.choice-card-body:after{content:"";font-family:bootstrap-icons;font-size:13px;color:var(--primary);position:absolute;top:12px;right:12px}.header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:12px 18px}.user-menu{position:relative}.sidebar-toggle,.user-menu-btn{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid transparent;background:transparent;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.sidebar-toggle:hover,.user-menu-btn:hover{background:var(--surface);border-color:#14192814;box-shadow:var(--shadow-interactive)}.user-menu-btn{width:auto;min-width:52px;padding:0 10px;gap:4px}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;padding:6px;border-radius:14px;border:1px solid rgba(20,25,40,.08);background:var(--surface);box-shadow:var(--shadow-interactive-hover);z-index:20}.user-menu-dropdown-item{width:100%;display:flex;align-items:center;justify-content:flex-start;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:#444;font:inherit;text-align:left;cursor:pointer;transition:background .14s ease,color .14s ease}.user-menu-dropdown-item:hover{background:var(--primary-soft);color:var(--primary-hover)}.user-menu-dropdown-item--danger{color:#b42318}.user-menu-dropdown-item--danger:hover,.user-menu-dropdown-item--danger:focus-visible{background:#fee4e2;color:#912018}.sidebar-toggle-icon{font-size:20px;line-height:1;color:#444}.user-menu-icon{font-size:22px;line-height:1;color:#444}.user-menu-chevron{font-size:12px;line-height:1;color:#666;transform:rotate(90deg)}.layout.sidebar-hidden .sidebar{width:0;min-width:0;padding:0;border-right:none;border-bottom:none;overflow:hidden;display:none}.content{flex:1;min-height:0;display:flex;flex-direction:column;max-width:860px;width:100%;margin:0 auto}.chat-view{flex:1;min-height:0;overflow-y:auto;padding:28px 20px 20px;display:flex;flex-direction:column;gap:0}.chat-view--empty{gap:32px;overflow-y:auto}.composer-tray{padding:10px 48px 20px;background:var(--bg);flex-shrink:0}.app-snackbar{position:fixed;left:50%;bottom:26px;transform:translate(-50%);width:min(680px,calc(100vw - 28px));min-height:52px;border-radius:14px;border:1px solid transparent;padding:12px 14px;display:flex;align-items:center;gap:12px;z-index:1400;box-shadow:0 14px 34px #0f172a2e;animation:snackbar-in .19s ease}.app-snackbar--success{background:#f0f9f4;border-color:#bde4cd;color:#1a5b3b}.app-snackbar--error{background:#fff3f0;border-color:#f4c7bc;color:#932e20}.app-snackbar-message{margin:0;flex:1;font-size:13.5px;line-height:1.45;font-weight:600}.app-snackbar-dismiss{width:28px;height:28px;border-radius:999px;border:1px solid currentColor;background:transparent;color:inherit;font-size:14px;line-height:1;cursor:pointer;opacity:.9}.app-snackbar-dismiss:hover,.app-snackbar-dismiss:focus-visible{opacity:1;background:#0000000d;outline:none}@keyframes snackbar-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.message-list{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.msg{display:flex;flex-direction:column;gap:6px}.msg--user{align-items:flex-end}.msg--assistant{align-items:flex-start}.msg-bubble{padding:11px 15px;border-radius:14px;font-size:15px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.msg--user .msg-bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.msg--assistant .msg-bubble{background:var(--surface);border:1px solid var(--border);color:var(--text);border-bottom-left-radius:4px;box-shadow:none}.msg-bubble--pending{min-width:60px}.markdown-content{white-space:normal;line-height:2em}.markdown-content>*+*{margin-top:.5em}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content pre,.markdown-content blockquote{margin:0}.markdown-content ul,.markdown-content ol{padding-left:1.3em}.markdown-content li+li{margin-top:.2em}.markdown-content code{font-family:Consolas,Courier New,monospace;font-size:.92em;background:#00000014;padding:.1em .35em;border-radius:.35em}.markdown-content pre{overflow-x:auto;padding:10px 12px;border-radius:10px;background:#0d121fe0;color:#edf1ff}.markdown-content pre code{background:transparent;padding:0;color:inherit}.markdown-content a{color:inherit;text-decoration-thickness:1.5px;text-underline-offset:2px}.msg--assistant .markdown-content a{color:var(--primary)}.markdown-content blockquote{padding-left:.75em;border-left:3px solid var(--chip-border);color:var(--muted)}.msg-typing{display:inline-flex;align-items:center;gap:5px;height:20px}.msg-typing span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--muted);opacity:.6;animation:typing-bounce 1.2s ease-in-out infinite}.msg-typing span:nth-child(2){animation-delay:.2s}.msg-typing span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.6}30%{transform:translateY(-5px);opacity:1}}.sources-panel{max-width:min(640px,88%);padding:10px 14px;background:var(--primary-soft);border:1px solid var(--chip-border);border-radius:10px;font-size:12.5px}.sources-label{font-weight:700;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sources-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.sources-list{list-style:none;display:flex;flex-direction:column;gap:8px}.source-item{display:grid;gap:8px}.source-header-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.source-file{color:var(--text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.source-toggle{flex-shrink:0;width:28px;height:28px;border:1px solid var(--chip-border);border-radius:999px;background:var(--surface);color:var(--primary);font:inherit;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.source-toggle-icon{font-size:12px;line-height:1;transform:rotate(90deg);transition:transform .16s ease}.source-toggle-icon.is-open{transform:rotate(-90deg)}.source-toggle:hover{background:var(--primary-soft)}.source-toggle:focus-visible{outline:2px solid var(--focus-border);outline-offset:2px}.source-content{border:1px solid var(--chip-border);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;font-size:12px;line-height:1.45;white-space:pre-wrap}.hero{text-align:center;margin-bottom:32px}.hero h1{font-size:42px;font-weight:700;margin-bottom:10px;letter-spacing:-.5px;color:var(--text)}.hero .hero-sub{color:var(--muted);font-size:15.5px;margin-bottom:10px}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:14px;margin-bottom:32px}.topic{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);border:1px solid rgba(20,25,40,.08);border-radius:12px;box-shadow:none;padding:20px;display:grid;grid-template-columns:36px 1fr;align-items:center;gap:14px;min-height:108px;cursor:pointer;text-align:left;font-family:inherit;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.topic:hover{transform:translateY(-2px);border-color:#5364e847;box-shadow:var(--shadow-interactive-hover)}.topic-icon{width:36px;height:36px;font-size:26px;line-height:1;display:inline-grid;place-items:center;color:var(--secondary);flex-shrink:0}.topic span{font-size:1.05rem;line-height:1.25;font-weight:600;color:var(--text)}.chat-box{background:var(--surface);border:1px solid rgba(20,25,40,.14);border-radius:16px;padding:20px;overflow:visible;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease}.chat-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus-ring),var(--shadow-interactive)}.chat-input{width:100%;height:56px;max-height:140px;border:none;resize:none;outline:none;font-size:15px;font-family:inherit;color:var(--text);background:transparent;line-height:1.55}.chat-input:disabled{opacity:.55;cursor:not-allowed}.chat-input::placeholder{color:#aab0be}.chat-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:14px;gap:12px}.context-rail{display:grid;gap:10px;min-width:0;flex:1}.selected-context{display:flex;flex-wrap:wrap;gap:8px;min-height:34px}.context-chip{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 8px 0 11px;border:1px solid var(--chip-border);border-radius:999px;background:var(--chip-bg);color:#263055;font-size:12.5px;font-weight:600}.context-chip.is-concern{border-color:#d7d2f2;background:#f6f4ff}.context-chip.is-goal{border-color:#c9e6da;background:#effbf4}.context-chip-kind-badge{width:14px;height:14px;border-radius:999px;flex:0 0 14px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;letter-spacing:.01em;line-height:1;background:#838ab3;color:#fff}.context-chip.is-concern .context-chip-kind-badge{background:#7967d9}.context-chip.is-goal .context-chip-kind-badge{background:#2f9e70}.context-chip-remove{width:22px;height:22px;border-radius:999px;border:none;background:transparent;color:#606b92;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.context-chip-remove:hover,.context-chip-remove:focus-visible{background:#5364e824}.context-actions{display:flex;align-items:center}.context-picker{position:relative}.context-launcher{width:36px;height:36px;border-radius:12px;border:1px solid #d7dced;background:#fff;color:#2c3450;font:inherit;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease,transform .14s ease}.context-launcher:hover,.context-launcher:focus-visible{background:var(--primary-soft);border-color:var(--focus-border);box-shadow:0 0 0 4px var(--focus-ring);transform:translateY(-1px);outline:none}.context-menu{position:absolute;left:0;top:calc(100% + 8px);z-index:6;width:min(260px,84vw);overflow:visible;border:1px solid rgba(20,25,40,.12);border-radius:16px;background:#fff;box-shadow:var(--shadow-overlay);padding:8px;display:grid;gap:0}.context-menu.is-mobile{position:fixed;left:12px;right:12px;top:auto;bottom:12px;width:auto;max-height:min(72vh,440px);overflow-y:auto;z-index:60}.context-menu.is-mobile .context-submenu{position:static;left:auto;right:auto;top:auto;width:100%;max-height:none;overflow:visible;border:none;border-radius:0;box-shadow:none;padding:6px 0 0;margin-top:6px;border-top:1px solid #eceef5;transform:none!important}.context-menu.is-drop-up{top:auto;bottom:calc(100% + 8px)}.context-menu[hidden]{display:none}.context-menu-main{display:grid;gap:4px}.context-root-item{width:100%;min-height:40px;border:1px solid transparent;border-radius:12px;background:#fff;color:#2c3450;text-align:left;padding:8px 10px;font:inherit;font-size:13.5px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease}.context-root-item:hover,.context-root-item:focus-visible{background:#f5f7fb;border-color:#e4e8f5;outline:none}.context-root-item.is-active{background:#eef2ff;border-color:#cad3ff;color:#202a53}.context-root-item-main{display:inline-flex;align-items:center;gap:8px}.context-root-item-count{font-size:12px;color:#7f87a4;font-weight:600}.context-root-item-chevron{font-size:13px;line-height:1;color:#6f7898}.context-submenu{position:absolute;left:calc(100% + 8px);top:0;width:min(300px,84vw);max-height:360px;overflow-y:auto;border:1px solid rgba(20,25,40,.12);border-radius:16px;background:#fff;box-shadow:var(--shadow-overlay);padding:8px;display:grid;gap:6px}.context-menu.submenu-left .context-submenu{left:auto;right:calc(100% + 8px)}.context-submenu[hidden]{display:none}.context-submenu-heading{display:flex;align-items:center;justify-content:space-between;min-height:32px;padding:4px 8px 8px;border-bottom:1px solid #eceef5;margin-bottom:4px;font-size:12px;font-weight:700;color:#66708f;letter-spacing:.02em;text-transform:uppercase}.context-submenu-limit{font-size:11px;font-weight:600;color:#8a91ab;text-transform:none}.context-menu-item{width:100%;min-height:38px;border:1px solid transparent;border-radius:12px;background:#fff;color:#2c3450;text-align:left;padding:8px 10px;font:inherit;font-size:13.5px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease,transform .14s ease}.context-menu-item:hover,.context-menu-item:focus-visible{background:#f5f7fb;border-color:#e4e8f5;transform:translate(1px);outline:none}.context-menu-item.is-selected{background:#edf1ff;border-color:#b5c0ff;color:#1f2850;font-weight:600}.context-menu-check{font-size:14px;line-height:1;color:#4e5cda}.context-menu-item.is-disabled{opacity:.5;cursor:not-allowed}.context-menu-item.is-disabled:hover,.context-menu-item.is-disabled:focus-visible{transform:none;background:#fff;border-color:transparent}.send-btn{width:44px;height:44px;border:none;background:var(--primary);border-radius:11px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .14s ease,box-shadow .14s ease,transform .1s ease;box-shadow:var(--shadow-interactive)}.send-btn:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--shadow-interactive-hover);transform:translateY(-1px)}.send-btn:disabled,.send-btn--loading{opacity:.5;cursor:not-allowed;transform:none}.send-btn-icon{font-size:17px;line-height:1;color:#fff}.suggestions{margin-top:24px}.suggestions-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em;text-transform:uppercase}.suggestions-label .suggestions-icon{font-size:14px;color:#a0a9c8}.suggestion-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.suggestion{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:9px 15px;background:var(--surface);border:1px solid rgba(20,25,40,.1);border-radius:999px;font-family:inherit;font-size:13.5px;color:var(--text);cursor:pointer;transition:background .14s ease,border-color .14s ease,transform .14s ease;font-weight:600}.suggestion:hover{background:var(--primary-soft);border-color:var(--focus-border);transform:translateY(-1px)}.prefs-footer{display:grid;gap:10px;padding-top:10px;margin-top:4px;border-top:1px solid rgba(20,25,40,.08);background:linear-gradient(180deg,#ffffffb3,#fff 35%)}.prefs-action{width:100%;min-height:48px;border-radius:14px;border:1px solid transparent;font:inherit;font-weight:700;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease,background .12s ease}.prefs-action:hover,.prefs-action:focus-visible{transform:translateY(-1px)}.prefs-action--primary{color:#fff;background:linear-gradient(180deg,#5c6ced,#4758db);box-shadow:var(--shadow-interactive)}.prefs-action--primary:hover,.prefs-action--primary:focus-visible{box-shadow:var(--shadow-interactive-hover)}.prefs-action--secondary{color:#31405f;background:#fff;border-color:#1419281a}.prefs-status{min-height:1px;font-size:13px;color:var(--muted)}.disclaimer{margin-top:10px;font-size:11.5px;color:#b4b8c6;text-align:center;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 1000px){.topic-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.layout{flex-direction:column}.sources-panel{max-width:100%}.source-file{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.sidebar{position:static;top:auto;width:100%;height:auto;min-height:0;border-right:none;border-bottom:1px solid var(--border)}.topic-grid{grid-template-columns:repeat(2,1fr);gap:12px}.topic{padding:18px;min-height:96px;grid-template-columns:30px 1fr;gap:12px}.topic-icon{width:30px;height:30px;font-size:22px}.topic span{font-size:1rem}.chat-footer{align-items:flex-end}.preferences-panel{width:100vw;border-left:none;box-shadow:none}.preferences-header,.preferences-panel-body{padding-left:16px;padding-right:16px}.app-snackbar{bottom:16px;width:calc(100vw - 18px);border-radius:12px;padding:11px 12px;gap:10px}.app-snackbar-message{font-size:13px}.prefs-footer{padding-left:0;padding-right:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
