/* Cleanie — styles des modules ajoutés à Mon QG (mêmes jetons de couleur) */
[hidden]{display:none!important}
.prenoms{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:6px 0 14px}
.prenoms button{font:inherit;font-family:var(--f-title);font-weight:700;font-size:16px;padding:9px 20px;border-radius:999px;border:0;background:var(--card);color:var(--deep);box-shadow:var(--shadow),inset 0 0 0 1.5px var(--line);cursor:pointer}
.prenoms button.on{background:var(--grad);color:#fff;box-shadow:0 12px 24px -14px var(--pink)}
.dem-row{grid-template-columns:auto 1fr auto auto}
.dem-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--soft);font-size:18px;flex:none}
.dem-ic.nouvelle{background:var(--grad);box-shadow:0 8px 18px -10px var(--pink)}
.dem-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.dem-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:6px 0 14px}
.dem-dl dt{font-family:var(--f-title);font-weight:700;color:var(--muted)}
.dem-dl dd{margin:0;font-weight:700;word-break:break-word}
.dem-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin:0 0 14px}
.dem-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px;box-shadow:var(--shadow)}
.dem-pick{display:flex;flex-wrap:wrap;gap:6px}
.msg-row.nl .t{color:var(--deep)}
.fil{display:flex;flex-direction:column;gap:8px;max-height:46vh;overflow-y:auto;padding:4px 2px}
.bulle{max-width:84%;padding:10px 13px;border-radius:18px;line-height:1.45;font-size:15px}
.bulle small{display:block;margin-top:3px;font-size:11.5px;opacity:.7}
.bulle.in{align-self:flex-start;background:var(--plein);box-shadow:inset 0 0 0 1px var(--line);border-bottom-left-radius:6px}
.bulle.out{align-self:flex-end;background:var(--grad);color:#fff;border-bottom-right-radius:6px}
.cloche{position:relative}
.cloche .pastille{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--out);color:#fff;font:800 11px/18px var(--f-body);text-align:center;box-shadow:0 0 0 2px #fff}
.push-in{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:0 20px 16px}
.afaire{margin-bottom:16px}
@media (max-width:640px){.dem-row{grid-template-columns:auto 1fr auto}.dem-row .dem-tags{display:none}}
