/* Global overlay: dashboard geometry never depends on conversation state. */
#assistant-launcher{position:fixed;z-index:85;right:1.5rem;bottom:1.5rem;width:3.5rem;height:3.5rem;border-radius:1.2rem;background:var(--panel);border:1px solid var(--accent);box-shadow:0 6px 30px #0004,0 0 20px #58e8d122;color:var(--accent)}
#assistant-launcher span{font-size:2rem;font-weight:600;text-shadow:0 0 14px var(--accent)}
.floating-assistant{position:fixed;z-index:86;right:1.5rem;bottom:1.5rem;width:clamp(26rem,36vw,calc(100vw - 3rem));height:min(76dvh,calc(var(--assistant-viewport-height,100dvh) - 3rem));max-width:calc(100vw - 3rem);display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:1.25rem;box-shadow:0 20px 70px #0005;overflow:hidden;transition:width .22s,height .22s,border-radius .22s}
.floating-assistant[hidden],#assistant-launcher[hidden]{display:none}
.assistant-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem .9rem;border-bottom:1px solid var(--border-light);flex-shrink:0}.assistant-header>div,.assistant-header nav{display:flex;align-items:center;gap:.4rem}.assistant-header strong{font:700 14px Manrope,system-ui}.assistant-header small{font-weight:400;color:var(--muted)}.assistant-mark{font-size:24px;color:var(--accent);margin-right:6px}.assistant-header button{width:2rem;height:2rem;padding:0;border-color:transparent}
.assistant-history{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:1rem;scrollbar-width:thin}.assistant-message{margin:0 0 1.2rem;max-width:100%}.assistant-message small{display:block;color:var(--accent);margin-bottom:5px}.assistant-message p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text);font-size:.9rem;line-height:1.6}.assistant-message.user{padding:.75rem;border-radius:.75rem;background:color-mix(in srgb,var(--blue) 8%,var(--panel));margin-left:1.75rem}.assistant-message.user small{color:var(--muted)}
.assistant-composer{flex-shrink:0;padding:.65rem .75rem .75rem;border-top:1px solid var(--border-light);background:var(--panel)}.assistant-composer textarea{width:100%;display:block;resize:vertical;min-height:3rem;max-height:min(9rem,25dvh);border:0;border-radius:.5rem;padding:.65rem;font:inherit;background:var(--input);color:var(--text)}.assistant-quick-mark{display:none}.assistant-actions{display:flex;gap:.4rem;align-items:center;margin-top:.5rem}.assistant-actions>button{height:2.2rem;padding:0 .65rem;white-space:nowrap;font-size:.75rem}.assistant-actions .primary{margin-left:auto;min-width:5rem}.assistant-model{flex:0 1 auto;min-width:0;max-width:min(16rem,40%);margin:0}.assistant-model select{width:auto;max-width:100%;height:2.2rem;min-width:0;border-radius:.5rem;border:1px solid var(--border);background:var(--panel);color:var(--muted);font:inherit;font-size:.7rem;padding:0 .4rem}.assistant-status{flex-shrink:0;max-height:5rem;overflow:auto;font-size:.75rem;padding:0 .9rem;color:var(--muted)}.assistant-status:not(:empty){padding-top:.4rem;padding-bottom:.4rem}.assistant-result{padding:0 .75rem .4rem}.assistant-result button{width:100%;font-size:.75rem;color:var(--accent)}
.floating-assistant[data-mode=quick]{width:clamp(10rem,15vw,calc(100vw - 3rem));height:auto;min-height:3.6rem;border-color:var(--accent)}
[data-mode=quick] .assistant-header,[data-mode=quick] .assistant-history,[data-mode=quick] .assistant-actions,[data-mode=quick] .assistant-result,[data-mode=quick] .assistant-status{display:none}
[data-mode=quick] .assistant-composer{display:flex;align-items:center;gap:.7rem;border:0;padding:.5rem .8rem}
[data-mode=quick] .assistant-quick-mark{display:block;flex-shrink:0;font-size:1.7rem;color:var(--accent);border:0;background:none;padding:0 .65rem 0 0;border-right:1px solid var(--border)}
[data-mode=quick] textarea{resize:none;min-height:2.4rem;height:2.4rem;padding:.4rem;background:transparent;flex:1;min-width:0}
.floating-assistant[data-mode=quick]:focus-within{border-color:var(--accent);box-shadow:0 20px 70px #0005,0 0 12px color-mix(in srgb,var(--accent) 18%,transparent)}
[data-mode=quick] textarea:focus,[data-mode=quick] textarea:focus-visible{outline:none;box-shadow:none;border:0}
.assistant-quick-expand{display:none}
[data-mode=quick] .assistant-quick-expand{display:block;flex-shrink:0;width:1.8rem;height:2rem;padding:0;border:0;background:transparent;color:var(--accent)}
.assistant-connection{flex-shrink:0;padding:.9rem;border-bottom:1px solid var(--border-light);max-height:50%;overflow:auto}
.assistant-connection[hidden],.assistant-connection form[hidden]{display:none}
[data-mode=quick] .assistant-connection{display:none}
.assistant-connection h3{font-size:1rem;margin:0 0 .4rem}
.assistant-connection p{font-size:.8rem;line-height:1.5;color:var(--muted);margin:.4rem 0}
.assistant-connection form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:center;margin-top:.7rem}
.assistant-connection label{grid-column:1/-1;font-size:.8rem;color:var(--text)}
.assistant-connection input{min-width:0;width:100%;height:2.4rem;margin:0;border:1px solid var(--border);border-radius:.5rem;background:var(--input);color:var(--text);padding:0 .6rem;font:inherit}
.assistant-connection button{height:2.4rem;padding:0 .7rem;font-size:.75rem;white-space:nowrap}
.assistant-connection-status:empty{display:none}
[data-mode=quick][aria-busy=true] .assistant-quick-mark{animation:assistant-pulse 1s ease-in-out infinite}
@keyframes assistant-pulse{50%{opacity:.35}}
.assistant-full #content,.assistant-full main>footer,.assistant-full .strategy-page,.assistant-full main>.topbar{display:none!important}.assistant-full main{padding:0}
.floating-assistant[data-mode=full]{position:relative;inset:auto;z-index:10;width:100%;height:var(--assistant-viewport-height,100dvh);max-width:none;margin:0;border-radius:0;box-shadow:none}
[data-mode=full] .assistant-history{padding:1.5rem clamp(1rem,4vw,5rem)}[data-mode=full] .assistant-message{max-width:85ch}[data-mode=full] .assistant-message.user{margin-left:auto}
[data-mode=full] .assistant-composer{padding:1rem clamp(1rem,4vw,5rem)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:760px){
 #assistant-launcher{right:1rem;bottom:calc(76px + env(safe-area-inset-bottom));width:3rem;height:3rem;border-radius:1rem}
 .floating-assistant,.floating-assistant[data-mode=full]{position:fixed;right:0;bottom:var(--assistant-keyboard,0px);top:auto;margin:0;width:100%;max-width:100%;height:calc(var(--assistant-viewport-height,100dvh) - 1rem);border-radius:1.25rem 1.25rem 0 0;z-index:86}
 .floating-assistant[data-mode=expanded]{height:min(82dvh,calc(var(--assistant-viewport-height,100dvh) - 1rem))}
 .floating-assistant[data-mode=quick]{right:1rem;bottom:calc(max(76px,var(--assistant-keyboard,0px)) + env(safe-area-inset-bottom));width:clamp(14rem,50%,calc(100% - 2rem));max-width:calc(100% - 2rem);height:auto;border-radius:1.2rem}
 .assistant-composer,[data-mode=full] .assistant-composer{padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom))}.assistant-composer textarea{font-size:16px}.assistant-actions>button{height:2.4rem}.assistant-actions{gap:.3rem}.assistant-model select{font-size:.7rem;height:2.4rem}.assistant-header{padding:.65rem .75rem}[data-mode=full] .assistant-history{padding:1rem}
}
@media(prefers-reduced-motion:reduce){.floating-assistant{transition:none}[data-mode=quick][aria-busy=true] .assistant-quick-mark{animation:none}}
.memory-dialog .planning-heading{padding:18px 22px}.memory-dialog .planning-heading h2{font-size:20px}.memory-dialog .preview-body{padding:16px 22px}.memory-category>h3{font-size:16px;margin:22px 0 10px;color:var(--accent)}.memory-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted);font-size:12px}.memory-card-heading button{padding:6px 10px;font-size:12px}.memory-entry>p{color:var(--text);margin:8px 0;white-space:pre-wrap}.memory-entry>small{color:var(--muted)}.memory-entry details{margin-top:12px;font-size:12px;color:var(--muted)}.memory-entry details summary{cursor:pointer}.memory-archive{margin-top:20px}.memory-archive>summary{padding:12px 0;cursor:pointer}

.memory-dialog{width:min(800px,94vw)}.memory-dialog .memory-entry{padding:16px}.memory-dialog .preview-body{max-width:none}
/* v0.6.3: source evidence in the existing conversation flow. */
.assistant-knowledge-badge{display:inline-block;font-size:11px;color:var(--teal,#53daca);padding:4px 8px;border:1px solid var(--border);border-radius:8px;margin:4px 0}
.assistant-source{border:1px solid var(--border);border-radius:10px;padding:10px;margin:8px 0;overflow-wrap:anywhere;font-size:12px}
.assistant-source strong,.assistant-source small{display:block}.assistant-source small{opacity:.7;margin:4px 0}
.assistant-source blockquote{margin:8px 0;padding-left:10px;border-left:2px solid var(--border);white-space:pre-wrap;line-height:1.5}
.assistant-source button{font-size:12px;min-height:32px}.assistant-knowledge-notice{font-size:12px;opacity:.85;margin:8px 0}

.assistant-coverage{border:1px solid var(--line);border-radius:12px;padding:12px;margin:12px 0;font-size:13px}.assistant-coverage ul{padding-left:18px}.assistant-coverage small{display:block;color:var(--muted);line-height:1.5}

.assistant-source summary,.assistant-coverage summary,.assistant-working summary{cursor:pointer;color:var(--accent);font-size:.9rem}.assistant-working{padding:10px 0;font-size:.85rem}.assistant-working>details{margin:8px 0}.assistant-working blockquote{margin:8px 0;padding-left:10px;border-left:2px solid var(--border)}
