/* Datenschutz-Assistent: übernimmt die Farbvariablen der Einbettungsseite (Würde & Wandel);
   die Vorgaben unten gelten nur, wenn die Seite sie nicht selbst definiert. */
.dsc {
  --dsc-accent: var(--accent, #1d4a7a);
  --dsc-accent-ink: var(--accent-ink, #ffffff);
  --dsc-soft: var(--accent-soft, #e4ecf6);
  --dsc-card: var(--card, #ffffff);
  --dsc-ink: var(--ink, #1b2a3a);
  --dsc-muted: var(--muted, #55616f);
  --dsc-line: var(--line, #dde3ea);
  --dsc-gold: var(--gold, #b5833a);
  --dsc-radius: var(--radius, 14px);
  max-width: 760px; font-family: inherit; color: var(--dsc-ink);
}
.dsc-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.dsc-hint { margin: 0 0 18px; padding: 12px 16px; border: 1px dashed var(--dsc-gold); border-radius: 10px; color: var(--dsc-muted); font-size: .92rem; line-height: 1.5; }
.dsc-hint strong { color: var(--dsc-ink); }
.dsc-chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 18px; }
.dsc-chip { font: inherit; font-size: .92rem; text-align: left; cursor: pointer; padding: 9px 14px; border-radius: 999px; border: 1px solid var(--dsc-line); background: var(--dsc-card); color: var(--dsc-ink); }
.dsc-chip:hover { border-color: var(--dsc-accent); color: var(--dsc-accent); }
.dsc-log { display: flex; flex-direction: column; gap: 14px; margin: 0 0 18px; }
.dsc-msg { padding: 14px 18px; border-radius: var(--dsc-radius); border: 1px solid var(--dsc-line); background: var(--dsc-card); line-height: 1.6; }
.dsc-msg p { margin: 0 0 .7em; } .dsc-msg p:last-child { margin-bottom: 0; }
.dsc-msg ul, .dsc-msg ol { margin: 0 0 .7em; padding-left: 1.3em; } .dsc-msg li { margin: .25em 0; }
.dsc-user { align-self: flex-end; max-width: 88%; background: var(--dsc-soft); border-color: transparent; }
.dsc-bot { align-self: stretch; }
.dsc-err { border-color: var(--dsc-gold); color: var(--dsc-ink); }
.dsc-wait { color: var(--dsc-muted); font-style: italic; }
.dsc-src { font-size: .88rem; color: var(--dsc-muted); border-top: 1px solid var(--dsc-line); padding-top: .7em; margin-top: .9em !important; }
.dsc-src a { color: var(--dsc-accent); }
.dsc-form { display: flex; flex-direction: column; gap: 12px; }
.dsc-input { width: 100%; font: inherit; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--dsc-line); background: var(--dsc-card); color: var(--dsc-ink); resize: vertical; min-height: 3.6em; }
.dsc-input:focus-visible { outline: 3px solid var(--dsc-gold); outline-offset: 2px; }
.dsc-send { align-self: flex-start; cursor: pointer; font: inherit; font-weight: 600; padding: 12px 24px; border-radius: 999px; border: 2px solid var(--dsc-accent); background: var(--dsc-accent); color: var(--dsc-accent-ink); }
.dsc-send:hover { filter: brightness(1.08); }
.dsc-send:disabled { opacity: .55; cursor: wait; }
.dsc-foot { margin: 14px 0 0; font-size: .85rem; color: var(--dsc-muted); }
