/* Paket F Darstellung (Vertrag Chat § 2, § 8): Markdown, Tabellen-Rahmen, Codeblöcke, Shell-Einfärbung. */
.md { white-space: normal; min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.blase.md { white-space: normal; }
.detail-text.md { white-space: normal; }
.md > :first-child { margin-top: 0; }
.md > :last-child { margin-bottom: 0; }
.md-p { margin: 0 0 .5em; }
.md-h { font-weight: 700; margin: .6em 0 .3em; }
.md-h1 { font-size: 1.12em; }
.md-h2 { font-size: 1.06em; }
.md-h3 { font-size: 1em; }
.md strong { font-weight: 700; }
.md del { opacity: .7; }
.md-link { color: var(--grün); text-decoration: underline; text-underline-offset: 2px; overflow-wrap: anywhere; }
.md-code-inline { font: 500 .88em var(--mono); background: #0c0e10; border: 1px solid #22272b; border-radius: 5px; padding: 1px 5px; overflow-wrap: anywhere; }
.md-liste { margin: 0 0 .5em; padding-left: 1.3em; }
.md-liste .md-liste { margin: .15em 0 0; }
.md-punkt { margin: .1em 0; padding-left: 2px; }
.md-zitat { margin: 0 0 .5em; padding: 2px 0 2px 10px; border-left: 3px solid #2f3a40; color: #aeb5ba; }
.md-zitat .md-zitat { margin-bottom: 0; }

/* Tabellen: eigener, waagerecht scrollbarer Rahmen – bei 390 px ragt nichts aus der Blase. */
.md-tabelle { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 0 0 .5em; border: 1px solid #22272b; border-radius: 8px; }
.md-tab { border-collapse: collapse; width: max-content; min-width: 100%; font: 400 12.5px/1.35 system-ui, sans-serif; }
.md-tab th, .md-tab td { padding: 5px 9px; border-bottom: 1px solid #1a1e21; text-align: left; vertical-align: top; overflow-wrap: normal; }
.md-tab th { background: #0c0e10; font-weight: 700; white-space: nowrap; }
.md-tab tbody tr:last-child td { border-bottom: 0; }
.md-tab .md-mitte { text-align: center; }
.md-tab .md-rechts { text-align: right; }

/* Codeblöcke mit Kopieren-Knopf */
.md-codebox { margin: 0 0 .5em; border: 1px solid #1a1e21; border-radius: 10px; background: #050607; overflow: hidden; max-width: 100%; }
.md-codekopf { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 3px 6px 3px 10px; background: #0c0e10; border-bottom: 1px solid #1a1e21; min-height: 28px; }
.md-sprache { font: 500 10.5px var(--mono); color: #6d757c; }
.md-kopieren { margin-left: auto; background: transparent; border: 1px solid #22272b; color: var(--grün); border-radius: 999px; padding: 3px 10px; font: 600 10.5px var(--mono); cursor: pointer; }
.md-kopieren:focus-visible { outline: 2px solid var(--grün); outline-offset: 2px; }
.md-pre { margin: 0; padding: 8px 10px; overflow-x: auto; max-height: 360px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.md-code { display: block; font: 400 12px/1.4 var(--mono); color: #d6dbde; white-space: pre; user-select: text; -webkit-user-select: text; }
.md-gekuerzt { padding: 4px 10px; font: 500 11px var(--mono); color: #6d757c; }

/* Shell-Kasten im Verlauf: Befehl eingefärbt, ab 80 Zeichen „…“, Antippen zeigt alles */
.vl-shell .vl-name { color: var(--hell); }
.vl-sh-cmd { color: var(--grün); font-weight: 700; }
.vl-sh-op { color: var(--gelb); }
.vl-sh-opt { color: #7fb4ff; }
.vl-sh-str { color: #e6b17a; }
.vl-sh-voll { display: block; padding: 8px 10px; border-top: 1px solid #1a1e21; background: #050607; font: 400 11.5px/1.45 var(--mono); white-space: pre-wrap; overflow-wrap: anywhere; color: #b6bcc1; user-select: text; -webkit-user-select: text; }
