.markdown { line-height:1.55; overflow-wrap:anywhere; min-width:0 }
.markdown > :first-child { margin-top:0 }
.markdown > :last-child { margin-bottom:0 }
.markdown p { white-space:pre-wrap; margin:.65em 0 }
.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6 { font-family:inherit; font-size:1.1em; line-height:1.35; margin:1em 0 .5em; color:inherit }
.markdown h1 { font-size:1.3em }
.markdown h2 { font-size:1.2em }
.markdown ul,.markdown ol { padding-left:1.6em; margin:.5em 0 }
.markdown li { margin:.25em 0 }
.markdown li input { width:auto; min-height:0; margin-right:.45em }
.markdown blockquote { margin:.6em 0; border-left:3px solid #747b70; padding:.1em .8em; color:#bbbfb7 }
.markdown code { background:#111411; padding:.1em .3em; border-radius:2px; font-size:.9em }
.markdown pre.code-block { overflow-x:auto; white-space:pre; padding:10px; background:#111411; border:1px solid #41473e; max-width:100% }
.markdown pre.code-block code { padding:0; background:none }
.markdown .table-scroll { overflow-x:auto; max-width:100%; margin:.7em 0 }
.markdown table { border-collapse:collapse; font-size:.95em; min-width:min(100%,300px) }
.markdown th,.markdown td { border:1px solid #4c5249; padding:6px 10px; text-align:left; vertical-align:top }
.markdown th { background:#292e27; font-weight:600 }
.markdown .align-left { text-align:left }
.markdown .align-center { text-align:center }
.markdown .align-right { text-align:right }
.markdown tbody tr:nth-child(even) { background:#20251f }
.math-display { display:block; overflow-x:auto; margin:.7em 0; padding:6px 0; max-width:100% }
.math-inline math { font-size:1.1em }
.math-fallback { white-space:pre-wrap }
.mermaid-diagram { max-width:100%; min-width:0; margin:.7em 0 }
.mermaid-diagram details { font-size:.85em }
.mermaid-diagram details pre { white-space:pre; overflow:auto }
.message-format-controls { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:10px; font:11px var(--mono,monospace); color:#a8afa2 }
.message-format-controls label { margin:0; display:flex; align-items:center; gap:4px }
.message-format-controls input { width:auto; min-height:0; margin:0 }
.message-format-controls button { min-height:24px; padding:2px 6px; font:inherit }
@media (max-width:700px) { .message-format-controls { gap:10px } .message-format-controls button,.message-format-controls label { min-height:36px } }

.chat-notification { border-left:2px solid #ffb079; padding-left:8px }
.chat-notification small { color:#a8afa2 }

.message-link { display:inline; min-height:0; padding:1px 5px; margin:0 2px; border:1px solid #646b60; background:#252b24; color:inherit; font:inherit; text-align:left; white-space:normal; overflow-wrap:anywhere; cursor:pointer }
.message-destinations { margin-top:12px; border-top:1px solid #41473e; padding-top:8px; font-size:.9em }
.message-destination { margin:6px 0 }
.link-destination { display:block; white-space:pre-wrap; overflow-wrap:anywhere; unicode-bidi:plaintext; user-select:text; font-family:var(--mono,monospace); font-size:.9em }
.link-warning { color:#ffbd7f; font-weight:600 }

.file-match-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; overflow-wrap:anywhere }
.file-actions { display:flex; gap:6px; flex-shrink:0 }
.file-actions button { min-width:36px; min-height:36px }
.file-metadata { display:flex; flex-wrap:wrap; gap:4px 16px; font-size:.85em; margin:6px 0 }
.file-check-time { display:block; color:#a8afa2 }
.executor-unavailable { color:#999; background:#202220 }
.file-preview { white-space:pre; overflow:auto; max-height:60vh; max-width:100%; font-size:13px }
.web-link-popup a { color:#ffb079; padding:8px 0 }
