/* YUNA — fenêtre de discussion. Reprend les couleurs de la page (--sage, --paper…),
   donc s'adapte toute seule au mode clair et au mode sombre. */
.yuna-lanceur{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;gap:10px;padding:6px 18px 6px 6px;border:2px solid var(--sage);border-radius:999px;background:var(--sheet);color:var(--sage);font:inherit;font-weight:700;font-size:1.05rem;cursor:pointer;box-shadow:0 12px 30px -14px rgba(20,40,35,.55)}
.yuna-lanceur:hover{background:var(--sage-soft)}
.yuna-lanceur img{width:48px;height:48px;border-radius:50%;display:block;object-fit:cover}
.yuna-lanceur[hidden]{display:none}

.yuna-fenetre{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:61;width:min(400px,calc(100vw - 32px));height:min(640px,calc(100vh - 32px));display:flex;flex-direction:column;background:var(--sheet);color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -24px rgba(20,40,35,.6);overflow:hidden}
.yuna-fenetre[hidden]{display:none}
@media (max-width:560px){.yuna-fenetre{inset:0;width:100%;height:100%;border-radius:0;border:0}}

.yuna-entete{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--sage);color:var(--sheet)}
.yuna-entete img{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid var(--gold)}
.yuna-entete strong{display:block;font-family:var(--font-display);font-size:1.2rem;line-height:1.2}
.yuna-entete span{display:block;font-size:.88rem;opacity:.9}
.yuna-fermer{margin-left:auto;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:1.7rem;line-height:1;cursor:pointer}
.yuna-fermer:hover{background:rgba(255,255,255,.15)}

.yuna-avis{margin:0;padding:10px 14px;font-size:.92rem;line-height:1.45;color:var(--ink);background:var(--sage-soft);border-bottom:1px solid var(--line)}

.yuna-fil{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;background:var(--paper)}
.yuna-bulle{max-width:88%;padding:10px 14px;border-radius:14px;font-size:1.08rem;line-height:1.5;overflow-wrap:anywhere}
.yuna-bulle.yuna-elle{align-self:flex-start;background:var(--sheet);border:1px solid var(--line);border-bottom-left-radius:4px}
.yuna-bulle.yuna-vous{align-self:flex-end;background:var(--sage);color:var(--sheet);border-bottom-right-radius:4px}
.yuna-bulle.yuna-masque{font-style:italic;opacity:.8}
.yuna-bulle a{color:inherit;font-weight:700}
.yuna-ecouter{display:inline-flex;align-items:center;gap:6px;margin-top:8px;padding:4px 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--sage);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}
.yuna-ecouter:hover{background:var(--sage-soft)}
.yuna-attente{align-self:flex-start;color:var(--muted);font-style:italic;font-size:1rem}

.yuna-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px 10px;background:var(--paper)}
.yuna-suggestions[hidden]{display:none}
.yuna-suggestions button{padding:8px 12px;border:1px solid var(--sage-mid);border-radius:999px;background:var(--sheet);color:var(--sage);font:inherit;font-size:.95rem;cursor:pointer;text-align:left}
.yuna-suggestions button:hover{background:var(--sage-soft)}

.yuna-saisie{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid var(--line);background:var(--sheet)}
.yuna-saisie textarea{flex:1;min-height:48px;max-height:140px;resize:none;padding:10px 12px;border:1px solid var(--sage-mid);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit;font-size:1.05rem;line-height:1.4}
.yuna-saisie button{min-width:48px;height:48px;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}
.yuna-micro{border:1px solid var(--sage-mid);background:transparent;color:var(--sage);font-size:1.3rem}
.yuna-micro[aria-pressed="true"]{background:var(--gold);color:#1F3A2E;border-color:var(--gold)}
.yuna-envoyer{padding:0 14px;border:0;background:var(--sage);color:var(--sheet);font-size:1rem}
.yuna-envoyer:disabled{opacity:.5;cursor:default}
.yuna-lanceur:focus-visible,.yuna-fenetre :focus-visible{outline:3px solid var(--seal);outline-offset:2px}
@media (prefers-reduced-motion:no-preference){.yuna-fenetre{animation:yuna-apparition .18s ease-out}@keyframes yuna-apparition{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
