.library-section{background:#fff;border:1px solid var(--line);border-radius:15px;padding:24px;margin-top:20px}
.library-section>.section-copy{max-width:760px}
.library-section>.section-copy p:last-child{color:var(--muted);line-height:1.55;margin:6px 0 18px}
.library-section>.upload{width:max-content;margin-bottom:18px}
.narrative-upload{display:flex;align-items:flex-end;gap:12px;margin:18px 0}
.narrative-upload>label:first-child{font-size:12px;font-weight:700;color:var(--muted)}
.narrative-upload select{display:block;margin-top:6px;border:1px solid var(--line);border-radius:9px;padding:11px;background:#fff;color:var(--ink)}
.narrative-upload .upload{width:max-content}
.narrative-card{border-left:4px solid var(--green)}
.context-label{font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--green);align-self:center;white-space:nowrap}
.context-chips label:has(input:checked){border-color:var(--green);background:#edf8f4;color:var(--green)}
.document-grid{min-width:0}
.document{min-width:0;overflow:hidden}
.document b{overflow-wrap:anywhere;word-break:break-word;line-height:1.35;margin-right:20px}
.document small{display:block;overflow-wrap:anywhere;margin-top:7px;line-height:1.4}
.context-chips{max-height:74px;min-width:0;scrollbar-width:thin}
.context-chips label{display:flex;align-items:center;gap:5px;max-width:260px;min-width:0;overflow:hidden;text-overflow:ellipsis}
.context-chips label input{flex:0 0 auto}
.chat-panel,.messages,.message,.bubble{min-width:0}
.message .bubble{overflow-wrap:anywhere;word-break:break-word}
.message.assistant .bubble{white-space:normal;max-width:100%;overflow:hidden}
.markdown-body>*:first-child{margin-top:0}
.markdown-body>*:last-child{margin-bottom:0}
.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{font-family:Manrope,sans-serif;line-height:1.25;margin:1.2em 0 .5em;color:var(--navy)}
.markdown-body h1{font-size:1.38rem}.markdown-body h2{font-size:1.22rem}.markdown-body h3{font-size:1.08rem}.markdown-body h4{font-size:1rem}
.markdown-body p{margin:.65em 0}
.markdown-body ul,.markdown-body ol{margin:.65em 0;padding-left:1.45rem}
.markdown-body li{margin:.28em 0}
.markdown-body blockquote{margin:.85em 0;padding:.65em 1em;border-left:4px solid var(--green);background:#f1f8f5;color:#42555d}
.markdown-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:#edf2f2;border-radius:5px;padding:.12em .35em}
.markdown-body pre{max-width:100%;overflow:auto;background:#132a33;color:#e7f2ef;border-radius:10px;padding:14px;white-space:pre}
.markdown-body pre code{background:transparent;color:inherit;padding:0}
.markdown-body table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1em 0;white-space:nowrap}
.markdown-body th,.markdown-body td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.markdown-body th{background:#edf7f3;color:var(--navy)}
.markdown-body hr{border:0;border-top:1px solid var(--line);margin:1.2em 0}
.markdown-body a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:2px}
@media(max-width:650px){.narrative-upload{align-items:stretch;flex-direction:column}.library-section{padding:18px}}
