/* PflegeLumo v1.0.1 · official CI tokens (Manrope / Source Sans 3 with fallbacks) */
.plumo{--plumo-ink:#123B46;--plumo-accent:#25756C;--plumo-gold:#D9A441;--plumo-line:#DCE7E1;--plumo-warm:#F6F3EC;max-width:900px;margin:24px auto;border:1px solid var(--plumo-line);border-radius:17px;padding:26px;background:#fff;color:var(--plumo-ink);font-family:"Source Sans 3",Arial,sans-serif;box-shadow:0 10px 27px rgba(18,59,70,.07)}
.plumo *{box-sizing:border-box}
.plumo [hidden]{display:none!important}
.plumo-head{display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--plumo-line);padding:5px 10px 20px}
.plumo-logo{display:block;max-width:min(100%,430px);max-height:166px;height:auto;width:auto;object-fit:contain}
.plumo h2,.plumo h3{font-family:"Manrope",Arial,sans-serif;color:var(--plumo-ink)}
.plumo h3{font-size:24px;margin:22px 0 10px;letter-spacing:-.04em}
.plumo-login>p{font-size:15px;color:#536D72;margin:0 0 20px}
.plumo label{display:block;font-weight:650;margin:14px 0;color:var(--plumo-ink);font-size:14px}
.plumo input,.plumo select,.plumo textarea{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid #ADBEBA;border-radius:9px;background:white;color:var(--plumo-ink);font:inherit;font-size:15px;line-height:1.35;min-height:46px}
.plumo input::placeholder,.plumo textarea::placeholder{color:#778D91}
.plumo button{border:0;border-radius:9px;padding:12px 20px;min-height:46px;background:var(--plumo-ink);color:#fff;font-weight:760;font-family:"Manrope",Arial,sans-serif;cursor:pointer;transition:background .18s ease}
.plumo button:hover{background:#1F5D6B}
.plumo button:disabled{opacity:.55;cursor:wait}
.plumo button:focus-visible,.plumo input:focus-visible,.plumo textarea:focus-visible,.plumo select:focus-visible{outline:3px solid var(--plumo-accent);outline-offset:2px}
.plumo-status{min-height:1.6em;margin:14px 0;font-size:14px;color:#4A6C6A}
.plumo .plumo-error{color:#A32A29!important;font-weight:700}
.plumo-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.plumo-notice{background:var(--plumo-warm);border-left:3px solid var(--plumo-gold);padding:12px 14px;border-radius:7px;font-size:13px;line-height:1.55;color:#51676E}
.plumo-chat{height:360px;overflow:auto;background:#F8FAF8;border:1px solid var(--plumo-line);border-radius:11px;padding:16px;display:flex;flex-direction:column;gap:13px}
.plumo-msg{max-width:95%;padding:12px 15px;border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;font-size:14px}
.plumo-msg strong{display:block;margin-bottom:6px;font-family:"Manrope",Arial,sans-serif}
.plumo-user{background:#E2F0EA;align-self:flex-end}
.plumo-ai{background:#fff;border:1px solid var(--plumo-line);align-self:flex-start}
.plumo-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
.plumo-actions button:not(.plumo-send){background:#E5EEEA;color:var(--plumo-ink)}
.plumo-actions button:not(.plumo-send):hover{background:#D3E4DE}
@media(max-width:650px){.plumo{padding:15px;margin:0}.plumo-controls{grid-template-columns:1fr}.plumo-chat{height:340px}.plumo-actions button{flex:1 1 45%}.plumo-logo{max-width:100%}}

.plumo-level-note{font-size:.85rem;line-height:1.5;color:#123B46;background:#F6F3EC;padding:10px 14px;border-radius:8px}

.plumo-setup{max-width:850px;margin:0 auto}.plumo-start-chat{margin-top:14px}.plumo-other-language[hidden],.plumo-setup[hidden],.plumo-learn[hidden],.plumo-login[hidden]{display:none!important}

/* Version 1.5.0: protect text contrast against WordPress theme overrides. */
.plumo button,
.plumo button:link,
.plumo button:visited,
.plumo button:hover,
.plumo button:focus,
.plumo button:active {
  background-color:#123B46 !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  border:2px solid #123B46 !important;
  opacity:1;
  text-shadow:none !important;
  box-shadow:none;
  font-size:15px;
  font-weight:700;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
  visibility:visible;
}
.plumo button:hover,.plumo button:focus-visible {
  background-color:#1F5D6B !important;
  border-color:#1F5D6B !important;
}
.plumo .plumo-actions button:not(.plumo-send),
.plumo .plumo-actions button:not(.plumo-send):hover,
.plumo .plumo-actions button:not(.plumo-send):focus {
  background-color:#F6F3EC !important;
  color:#123B46 !important;
  -webkit-text-fill-color:#123B46 !important;
  border:2px solid #123B46 !important;
}
.plumo button:disabled {
  opacity:.62 !important;
  cursor:wait;
}
.plumo .plumo-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.plumo .plumo-actions button{min-width:0;width:100%;min-height:48px;padding:12px 14px}
.plumo .plumo-start-chat{width:100%;max-width:420px;min-height:52px}
@media(max-width:520px){.plumo .plumo-actions{grid-template-columns:1fr}}

/* Version 1.6.0: Multiple Choice for all modes except Praxis-Trainer. */
.plumo .plumo-mc-area{margin-top:16px}
.plumo .plumo-mc-hint{font-size:14px;color:#123B46}
.plumo .plumo-mc-options{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}
.plumo .plumo-mc-options .plumo-option,
.plumo .plumo-mc-options .plumo-option:hover,
.plumo .plumo-mc-options .plumo-option:focus{
 display:block;width:100%;min-height:52px;text-align:left;white-space:normal;
 background:#F6F3EC!important;color:#123B46!important;
 -webkit-text-fill-color:#123B46!important;border:2px solid #25756C!important;
 padding:12px 16px;line-height:1.45;overflow-wrap:anywhere;
}
.plumo .plumo-mc-options .plumo-option:hover,
.plumo .plumo-mc-options .plumo-option:focus-visible{background:#E3F0EB!important}
.plumo .plumo-mc-options .plumo-option:disabled{opacity:.65!important}
.plumo .plumo-free-area[hidden],.plumo .plumo-mc-area[hidden]{display:none!important}

/* 1.7.0: Willkommens- und Bedienhinweise auf der Einrichtungsseite */
.plumo .plumo-welcome { background:#F6F3EC; color:#123B46; border:1px solid #6E97A1; border-radius:12px; padding:20px 22px; margin-bottom:22px; }
.plumo .plumo-welcome h3 { color:#123B46; margin-top:0; font-size:1.35rem; line-height:1.4; }
.plumo .plumo-welcome p { color:#123B46; line-height:1.65; margin:0 0 12px; }
.plumo .plumo-welcome p:last-child { margin-bottom:0; }
.plumo .plumo-welcome-note { font-size:.92rem; font-weight:600; }

/* PflegeLumo 1.9.0: Lernpfad, Fortschritt, CI-gerechte Lern- und Bildaktionen */
.plumo .plumo-progress{padding:12px 14px;margin-bottom:12px;border-radius:9px;background:#F6F3EC;color:#123B46;font-size:14px;line-height:1.5}
.plumo .plumo-lesson-controls{margin-top:15px;padding:14px;border:1px solid #6E97A1;border-radius:10px;background:#F6F3EC}
.plumo .plumo-lesson-controls button{margin:5px 6px 5px 0}
.plumo .plumo-lesson-controls label{margin-top:12px}
.plumo .plumo-image-controls{margin:15px 0}
.plumo .plumo-generated-image{max-width:min(100%,480px);height:auto;display:block;border-radius:12px;margin:14px auto;border:1px solid #6E97A1}
.plumo .plumo-image-result{min-height:0}
.plumo .plumo-lesson-controls[hidden],.plumo .plumo-image-controls[hidden]{display:none!important}

/* Version 2.0: formatierte KI-Antworten ohne ungeprüftes HTML */
.plumo .plumo-msg{white-space:normal}
.plumo .plumo-rich-text{line-height:1.65;overflow-wrap:anywhere}
.plumo .plumo-rich-text p{margin:.3em 0 .85em;color:#123B46}
.plumo .plumo-rich-text ul,.plumo .plumo-rich-text ol{margin:.35em 0 .85em;padding-left:1.6em}
.plumo .plumo-rich-text li{margin:.25em 0}
.plumo .plumo-rich-text h3,.plumo .plumo-rich-text h4,.plumo .plumo-rich-text h5{font-family:"Manrope",Arial,sans-serif;color:#123B46;font-weight:750;line-height:1.35;margin:.9em 0 .35em;letter-spacing:0}
.plumo .plumo-rich-text code{font-family:monospace;background:#F6F3EC;border-radius:4px;padding:1px 4px}
.plumo .plumo-rich-text strong{display:inline;font-family:inherit;margin:0}

/* Version 2.1: sauber gerenderte Markdown-Texte, Bild ohne Button */
.plumo .plumo-msg>.plumo-speaker{display:block;margin-bottom:8px;font-weight:750}
.plumo .plumo-rich-text strong{display:inline!important;margin:0!important;font-family:inherit!important}
.plumo .plumo-rich-text em{font-style:italic}
.plumo .plumo-rich-text blockquote{margin:.6em 0;padding:.4em .85em;border-left:3px solid #25756C;background:#F6F3EC}
.plumo .plumo-rich-text blockquote p{margin:.2em 0}
.plumo .plumo-image-loading{font-size:14px;color:#123B46}
.plumo .plumo-image-controls{margin:12px 0}
