/* Bound both columns to the workspace; sources cannot stretch the chat canvas. */
.main-shell>#main:has(>.workspace-panel:not([hidden]) .assistant-page){overflow:hidden;scrollbar-gutter:auto;max-width:none;min-width:0}
.workspace-panel:not([hidden]):has(>.assistant-page){width:100%;height:100%;min-width:0;min-height:0}
.assistant-page{display:flex;flex-direction:column;width:100%;max-width:none;margin:0;height:100%;min-width:0;min-height:0;container-type:inline-size}
.assistant-page>.page-heading,.assistant-page>.scope-bar{flex:none}
.assistant-page>.chat-workspace{flex:1;width:100%;min-width:0;min-height:0;grid-template-columns:minmax(0,1fr) clamp(224px,22cqw,320px);align-items:stretch;overflow:hidden}
.assistant-page .chat-main{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding-inline:clamp(16px,2cqw,28px)}
.assistant-page .conversation{flex:1;min-height:0;height:auto;max-height:none;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;overflow-wrap:anywhere}
.assistant-page .chat-composer{flex:none;margin-top:0}
.assistant-page .chat-composer textarea{height:clamp(48px,9dvh,104px);min-height:48px;max-height:104px;resize:none}
.assistant-page .chat-disclaimer{flex:none;line-height:1.7;margin:10px 0 14px}
.assistant-page .chat-context{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.assistant-page .chat-context>h3,.assistant-page .chat-context>p,.assistant-page .chat-context>.context-note{flex:none}
.assistant-page #context-documents{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:6px;overflow-wrap:anywhere}
.assistant-page .source-card{width:100%;max-width:100%;min-width:0}
.assistant-page .context-note{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border);line-height:1.8}
/* The available workspace, rather than the window, determines the columns. */
@container(max-width:780px){.assistant-page>.chat-workspace{grid-template-columns:minmax(0,1fr)}.assistant-page .chat-context{display:none}.assistant-page>.page-heading{flex-wrap:wrap}.assistant-page>.scope-bar{flex-wrap:wrap;gap:8px}}
@media(max-height:650px){.assistant-page>.page-heading{margin-bottom:12px}.assistant-page>.page-heading p,.assistant-page .chat-disclaimer{display:none}.assistant-page>.scope-bar{margin-bottom:10px}.assistant-page .conversation{padding-block:14px}.assistant-page .chat-composer textarea{height:48px}.assistant-page .chat-context{padding-block:16px}}
/* Retain exact positions across redraws and tab switches; no implicit smooth scroll. */
.main-shell>#main:has(>.workspace-panel:not([hidden]) .assistant-page){display:flex;flex-direction:column}
.main-shell>#main:has(>.workspace-panel:not([hidden]) .assistant-page)>.inline-note,.main-shell>#main:has(>.workspace-panel:not([hidden]) .assistant-page)>.service-error{flex:none}
.workspace-panel:not([hidden]):has(>.assistant-page){display:flex;flex-direction:column;flex:1;height:auto;min-height:0}
.assistant-page{flex:1;height:auto}
.assistant-page .conversation-wrap{display:flex;position:relative;flex:1;min-width:0;min-height:0;overflow:hidden}
.assistant-page .conversation{scroll-behavior:auto}
.assistant-page #context-documents{scroll-behavior:auto}
.chat-jump-latest{position:absolute;right:12px;bottom:14px;z-index:2;display:flex;align-items:center;min-height:36px;padding:8px 14px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);color:var(--color-brand);font:inherit;font-size:12px;box-shadow:0 3px 12px #153f4b14}
.chat-jump-latest[hidden]{display:none}
.chat-jump-latest:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}
@media(max-height:520px){.main-shell:has(>#main>.workspace-panel:not([hidden]) .assistant-page)>footer{display:none}.main-shell>#main:has(>.workspace-panel:not([hidden]) .assistant-page){padding:12px!important}.assistant-page>.scope-bar{flex-wrap:nowrap;max-height:40px;white-space:nowrap;overflow:auto}}
@media(max-height:420px){.assistant-page>.page-heading,.assistant-page>.scope-bar{display:none}.assistant-page .chat-composer{padding:8px 10px}.assistant-page .chat-composer textarea{height:40px;min-height:40px}}
