/* =====================================================================================================================
   Panneau « Amis et clan » (en bas à droite) — v3, 09/10/2026
   Maxime : « refait mieux la section ami et clan… plus moderne », puis « il est pas trop refait, entièrement mieux, redesign-le ».
   HTML : peindreSuivis / amiLigne (app.js, repères « refonte v3 ») — en-tête avec les visages présents, onglets à icônes,
   groupes En jeu · En ligne · Hors ligne, ligne « en jeu » = carte avec l'image du jeu (--jeu-img), bandeau du clan.
   Tout le dessin est ici, chargé en DERNIER dans index.html ; chaque règle commence par `html body #suivis.suivis.amis`
   pour passer devant mobile.css / app.css / refonte.css. Aucune :has(). Retour arrière : retirer la ligne amis.css
   d'index.html (et remettre app.js de sauvegardes-code/amis-panneau-v3-20261009/).
   ===================================================================================================================== */

html body #suivis.suivis.amis{
  --am-fond:#141517;--am-fond2:#1b1c1f;--am-encre:255,255,255;--am-av:#2c2e33;
  --am-s1:rgba(var(--am-encre),.04);--am-s2:rgba(var(--am-encre),.07);--am-s3:rgba(var(--am-encre),.11);
  --am-trait:rgba(var(--am-encre),.07);--am-txt:#f1f2f4;--am-dim:#8d929a;
  --am-vert:var(--id,#c6f500);--am-vert-rgb:var(--id-rgb,198,245,0);--am-encre-vert:var(--id-ink,#0b0d00);
  --am-cyan:#22d3ee;--am-cyan-rgb:34,211,238;--am-ambre:#f5b841;--am-hors:#565a61;
  background:var(--am-fond) !important;background-image:none !important;border:1px solid var(--am-trait) !important;color:var(--am-txt);
  -webkit-backdrop-filter:none !important;backdrop-filter:none !important;font-family:Inter,system-ui,sans-serif}
html[data-theme="clair"] body #suivis.suivis.amis{
  --am-fond:#ffffff;--am-fond2:#f5f6f9;--am-encre:18,24,38;--am-av:#e4e7ee;--am-txt:#141824;--am-dim:#5d6475;--am-hors:#b9bec8;
  --am-encre-vert:#fff;--am-cyan:#0891b2;--am-cyan-rgb:8,145,178;
  --am-s1:rgba(var(--am-encre),.035);--am-s2:rgba(var(--am-encre),.06);--am-s3:rgba(var(--am-encre),.1);--am-trait:rgba(var(--am-encre),.09)}
html body #suivis.suivis.amis .sv-av1{background:var(--am-av)}
html body #suivis.suivis.amis .sv-av1 .av{background:var(--am-av) !important;color:var(--am-txt) !important;font-weight:600}
html body #suivis.suivis.amis .sv-tete .am-n,html body #suivis.suivis.amis .sv-tete .sv-mpn{min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;
  box-shadow:0 0 0 2.5px var(--am-fond)}
@keyframes amPouls{0%,100%{box-shadow:0 0 0 0 rgba(var(--am-vert-rgb),.45)}60%{box-shadow:0 0 0 6px rgba(var(--am-vert-rgb),0)}}

/* =============================================================== REPLIÉ (PC) : une carte flottante sur deux lignes */
html body #suivis.suivis.amis:not(.ouvert){border-radius:20px !important;overflow:visible;
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 22px 50px -18px rgba(0,0,0,.8) !important}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete{display:grid !important;grid-template-columns:auto auto auto auto;grid-template-rows:auto auto;
  grid-template-areas:"av t n m" "av c n m";align-items:center;column-gap:12px;row-gap:1px;min-height:58px;padding:9px 16px 9px 10px !important;
  border-radius:20px;transition:background .15s}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete:not(.avec-avs){padding-left:16px !important}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete:hover{background:var(--am-s1)}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete::before{grid-area:av;width:22px;height:22px;background:var(--am-vert)}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete.avec-avs::before{display:none}
html body #suivis.suivis.amis:not(.ouvert) .sv-avs{grid-area:av;display:inline-flex !important}
html body #suivis.suivis.amis:not(.ouvert) .sv-av1{width:36px;height:36px;box-shadow:0 0 0 3px var(--am-fond)}
html body #suivis.suivis.amis:not(.ouvert) .sv-av1 + .sv-av1{margin-left:-12px}
html body #suivis.suivis.amis:not(.ouvert) .sv-av1:nth-child(n+4){display:none}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete b{grid-area:t;display:block !important;font-family:'Space Grotesk',Inter,sans-serif;font-size:14px;font-weight:700;
  letter-spacing:-.01em;line-height:1.2;white-space:nowrap;color:var(--am-txt)}
html body #suivis.suivis.amis:not(.ouvert) .sv-c{grid-area:c;display:inline-flex;align-items:center;font-size:12px;font-weight:500;color:var(--am-dim);line-height:1.2;white-space:nowrap}
html body #suivis.suivis.amis:not(.ouvert) .sv-c u{display:inline !important;text-decoration:none}
html body #suivis.suivis.amis:not(.ouvert) .sv-c em{color:var(--am-vert);font-weight:800;margin-right:4px}
html body #suivis.suivis.amis .sv-c::before{content:'';width:7px;height:7px;margin-right:7px;border-radius:50%;flex:none;background:var(--am-vert);animation:amPouls 2.2s ease-out infinite}
html body #suivis.suivis.amis .sv-c.sv-c-zero::before{background:var(--am-hors);animation:none}
html body #suivis.suivis.amis:not(.ouvert) .sv-tete .am-n{grid-area:n}
html body #suivis.suivis.amis:not(.ouvert) .sv-tete .sv-mpn{grid-area:m}
html body #suivis.suivis.amis:not(.ouvert) .sv-tete .sv-pt{display:none !important}

/* =============================================================== OUVERT */
html body #suivis.suivis.amis.ouvert{border-radius:26px !important;
  box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 50px 100px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.3) !important;
  animation:amOuvrir .26s cubic-bezier(.2,.8,.2,1)}
@keyframes amOuvrir{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){ html body #suivis.suivis.amis,html body #suivis.suivis.amis *,html body #suivis.suivis.amis *::before{animation:none !important;transition:none !important} }

/* --- en-tête : un dégradé, le titre, les visages présents et « ● 7 en ligne » ; cloche et fermer en haut à droite --- */
html body #suivis.suivis.amis.ouvert > .sv-tete{position:relative;display:flex !important;flex-wrap:wrap;align-items:center;row-gap:10px;column-gap:10px;
  min-height:0;padding:20px 110px 16px 22px !important;border-radius:0;cursor:pointer;
  background:radial-gradient(140% 120% at 0% 0%,rgba(var(--am-vert-rgb),.16),transparent 55%),
             radial-gradient(120% 120% at 100% 0%,rgba(var(--am-cyan-rgb),.10),transparent 50%) !important;
  border-bottom:1px solid var(--am-trait)}
html body #suivis.suivis.amis.ouvert > .sv-tete b{order:0;flex:0 0 100%;font-family:'Space Grotesk',Inter,sans-serif;font-size:21px;font-weight:700;
  letter-spacing:-.025em;line-height:1.1;color:var(--am-txt)}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-avs{order:1;display:inline-flex !important;align-items:center}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-av1{width:28px;height:28px;box-shadow:0 0 0 2.5px var(--am-fond)}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-av1 + .sv-av1{margin-left:-9px}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-av1 .av{font-size:11px !important}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-c{order:2;display:inline-flex;align-items:center;font-size:13px;color:var(--am-dim);line-height:1}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-c em{color:var(--am-txt);font-weight:700;margin-right:4px}
html body #suivis.suivis.amis.ouvert > .sv-tete .sv-c u{text-decoration:none}
html body #suivis.suivis.amis.ouvert > .sv-tete :is(.am-n,.sv-mpn,.sv-pt){display:none !important}
html body #suivis.suivis.amis.ouvert > .sv-tete > svg{display:none !important}
html body #suivis.suivis.amis.ouvert .am-cloche,
html body #suivis.suivis.amis.ouvert > .sv-tete::after{position:absolute;top:16px;width:38px !important;height:38px !important;display:grid;place-items:center;
  border-radius:13px;border:1px solid var(--am-trait);background-color:rgba(var(--am-encre),.06);color:var(--am-dim);transition:background-color .15s,color .15s;transform:none}
html body #suivis.suivis.amis.ouvert .am-cloche{right:62px}
html body #suivis.suivis.amis.ouvert .am-cloche svg{width:17px;height:17px}
html body #suivis.suivis.amis.ouvert > .sv-tete::after{right:16px;content:'' !important;font-size:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M3 3l8 8M11 3l-8 8' stroke='%238d929a' stroke-width='1.8' stroke-linecap='round'/></svg>");
  background-position:center;background-size:14px;background-repeat:no-repeat}
html body #suivis.suivis.amis.ouvert .am-cloche:hover,html body #suivis.suivis.amis.ouvert > .sv-tete:hover::after{background-color:rgba(var(--am-encre),.12);color:var(--am-txt)}

/* --- réglages de la cloche --- */
html body #suivis.suivis.amis.ouvert > .am-regl{margin:12px 14px 0;padding:12px;border-radius:16px;background:var(--am-fond2);border:1px solid var(--am-trait)}

/* --- invitations, demandes d'ami, invitations de clan --- */
html body #suivis.suivis.amis.ouvert > .sv-inv{margin:12px 14px 0;gap:8px}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv{position:relative;display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;border-radius:18px;overflow:hidden;
  background:var(--am-fond2) !important;border:1px solid var(--am-trait) !important}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv::before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 3px 3px 0;background:var(--am-vert)}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv > :is(.av,img,.clan-logo,.am-grp-ico){flex:none;width:40px !important;height:40px !important;border-radius:50% !important;
  border:0 !important;background:var(--am-av);font-size:15px !important;font-weight:600;color:var(--am-txt) !important;align-self:flex-start}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv-t{flex:1;min-width:0}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv-t p{margin:1px 0 9px;font-size:13px;line-height:1.4;color:var(--am-dim)}
html body #suivis.suivis.amis.ouvert > .sv-inv .inv-t p b{color:var(--am-txt);font-weight:650}
html body #suivis.suivis.amis.ouvert .inv-a{display:flex;flex-wrap:wrap;gap:6px}
html body #suivis.suivis.amis.ouvert .inv-b{min-height:32px;padding:0 14px;border-radius:11px;border:1px solid var(--am-trait);background:var(--am-s2);color:var(--am-txt);
  font:inherit;font-size:12.5px;font-weight:600;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;text-decoration:none;transition:background .15s,filter .15s}
html body #suivis.suivis.amis.ouvert .inv-b:hover{background:var(--am-s3)}
html body #suivis.suivis.amis.ouvert .inv-b.ok{flex:1 1 auto;justify-content:center;background:var(--am-vert);border-color:transparent;color:var(--am-encre-vert);max-width:150px}
html body #suivis.suivis.amis.ouvert .inv-b.ok:hover{filter:brightness(1.08)}

/* --- onglets : icône au-dessus du nom, trait lumineux sous l'onglet choisi --- */
html body #suivis.suivis.amis.ouvert .am-onglets{display:flex;gap:0;margin:6px 10px 0;padding:0;border-radius:0;background:none;border:0;border-bottom:1px solid var(--am-trait)}
html body #suivis.suivis.amis.ouvert .am-onglets button{position:relative;flex:1 1 0;min-width:0;min-height:56px;padding:8px 2px 9px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:4px;border-radius:12px 12px 0 0;background:none !important;color:var(--am-dim);font-size:11.5px;font-weight:600;
  letter-spacing:.01em;box-shadow:none !important;transition:color .15s;overflow:visible}
html body #suivis.suivis.amis.ouvert .am-onglets button:hover{color:var(--am-txt)}
html body #suivis.suivis.amis.ouvert .am-onglets button.on{color:var(--am-txt)}
html body #suivis.suivis.amis.ouvert .am-onglets button::after{content:'';position:absolute;left:22%;right:22%;bottom:-1px;height:2.5px;border-radius:3px 3px 0 0;
  background:var(--am-vert);box-shadow:0 0 12px rgba(var(--am-vert-rgb),.7);transform:scaleX(0);transition:transform .2s cubic-bezier(.2,.8,.2,1)}
html body #suivis.suivis.amis.ouvert .am-onglets button.on::after{transform:none}
html body #suivis.suivis.amis.ouvert .am-onglets .am-ico{width:20px;height:20px;flex:none;transition:color .15s,transform .15s}
html body #suivis.suivis.amis.ouvert .am-onglets button.on .am-ico{color:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .am-onglets button:hover .am-ico{transform:translateY(-1px)}
html body #suivis.suivis.amis.ouvert .am-onglets button i{position:absolute;top:5px;left:calc(50% + 7px);display:inline-grid;place-items:center;min-width:17px;height:17px;
  padding:0 5px;margin:0;border-radius:999px;font-size:10px;font-weight:800;font-style:normal;opacity:1;background:var(--am-av);color:var(--am-txt);box-shadow:0 0 0 2px var(--am-fond)}
html body #suivis.suivis.amis.ouvert .am-onglets button.on i{background:var(--am-vert);color:var(--am-encre-vert)}
html body #suivis.suivis.amis.ouvert .am-onglets button i.am-n{background:var(--am-cyan);color:#04262c}

/* --- la liste --- */
html body #suivis.suivis.amis.ouvert > .am-deux{padding:4px 10px calc(12px + env(safe-area-inset-bottom)) !important;scrollbar-width:thin;scrollbar-color:var(--am-s3) transparent}
html body #suivis.suivis.amis.ouvert .am-t{display:flex;align-items:center;gap:6px;padding:10px 10px 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--am-dim)}
html body #suivis.suivis.amis.ouvert .am-t > i{font-style:normal;margin-left:auto;letter-spacing:0;font-variant-numeric:tabular-nums}
html body #suivis.suivis.amis.ouvert :is(.am-c-amis,.am-msg,.am-c-groupe,.am-c-equipe) > .am-t{display:none}   /* l'onglet dit déjà ce que c'est */
/* bandeau du clan */
html body #suivis.suivis.amis.ouvert .am-c-clan > .am-t{margin:8px 0 2px;padding:10px 14px 10px 10px;border-radius:16px;text-transform:none;letter-spacing:0;font-size:12px;
  background:linear-gradient(120deg,rgba(var(--am-vert-rgb),.12),rgba(var(--am-vert-rgb),.02) 70%),var(--am-fond2);border:1px solid var(--am-trait)}
html body #suivis.suivis.amis.ouvert .am-c-clan > .am-t > i{padding:3px 9px;border-radius:999px;background:var(--am-s2);color:var(--am-txt);font-weight:700}
html body #suivis.suivis.amis.ouvert .am-clan{display:flex;align-items:center;gap:10px;min-width:0;color:var(--am-txt);text-decoration:none}
html body #suivis.suivis.amis.ouvert .am-clan .clan-logo{width:34px !important;height:34px !important;border-radius:10px !important;flex:none;display:grid;place-items:center;
  font-size:12px;font-weight:800;color:#0b0d00}
html body #suivis.suivis.amis.ouvert .am-clan span{display:flex;flex-direction:column;min-width:0;line-height:1.2}
html body #suivis.suivis.amis.ouvert .am-clan b{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #suivis.suivis.amis.ouvert .am-clan em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--am-vert);letter-spacing:.04em}
html body #suivis.suivis.amis.ouvert .am-clan:hover b{text-decoration:underline;text-underline-offset:3px}
/* titres de groupe : En jeu · En ligne · Hors ligne */
html body #suivis.suivis.amis.ouvert .am-sep{display:flex;align-items:center;gap:7px;margin:14px 8px 6px;font-size:10.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--am-dim)}
html body #suivis.suivis.amis.ouvert .am-liste > .am-sep:first-child{margin-top:8px}
html body #suivis.suivis.amis.ouvert .am-sep::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--am-hors)}
html body #suivis.suivis.amis.ouvert .am-sep.g0::before{background:var(--am-cyan);box-shadow:0 0 8px rgba(var(--am-cyan-rgb),.8)}
html body #suivis.suivis.amis.ouvert .am-sep.g1::before{background:var(--am-vert);box-shadow:0 0 8px rgba(var(--am-vert-rgb),.7)}
html body #suivis.suivis.amis.ouvert .am-sep::after{content:'';flex:1;height:1px;background:var(--am-trait)}
html body #suivis.suivis.amis.ouvert .am-sep i{font-style:normal;margin:0;opacity:.8;letter-spacing:0}
html body #suivis.suivis.amis.ouvert .am-vide{margin:12px 4px;padding:26px 18px;border-radius:18px;border:1px dashed var(--am-s3);font-size:13px;line-height:1.55;color:var(--am-dim);text-align:center}

/* --- une ligne --- */
html body #suivis.suivis.amis.ouvert .am-liste{gap:2px}
html body #suivis.suivis.amis.ouvert .am-l{position:relative;min-height:56px;padding:5px 8px;border-radius:16px;background:none !important;transition:background-color .15s}
html body #suivis.suivis.amis.ouvert .am-l:hover{background-color:var(--am-s1) !important}
html body #suivis.suivis.amis.ouvert .am-l.hors_ligne{opacity:1}
html body #suivis.suivis.amis.ouvert .am-l.hors_ligne .am-qui{opacity:.55}
html body #suivis.suivis.amis.ouvert .am-l.hors_ligne :is(.sv-av .av,.sv-av img){filter:grayscale(1)}
html body #suivis.suivis.amis.ouvert .am-qui{gap:12px;min-width:0}
html body #suivis.suivis.amis.ouvert :is(.am-qui .sv-av,.am-l .sa-av) :is(.av,img){width:42px !important;height:42px !important;border-radius:50% !important;border:0 !important;
  background:var(--am-av) !important;font-size:15px !important;font-weight:600;color:var(--am-txt) !important}
html body #suivis.suivis.amis.ouvert .am-qui .sv-av{width:42px;height:42px;flex:none}
html body #suivis.suivis.amis.ouvert .am-qui .sv-av .sv-pt{width:13px;height:13px;right:-2px;bottom:-2px;box-shadow:0 0 0 3px var(--am-fond);animation:none}
html body #suivis.suivis.amis.ouvert .sv-pt.en_ligne{background:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .sv-pt:is(.en_jeu,.aoe4){background:var(--am-cyan)}
html body #suivis.suivis.amis.ouvert .sv-pt.hors_ligne{background:var(--am-hors)}
html body #suivis.suivis.amis.ouvert .sv-pt.en-appel{background:var(--am-ambre) !important}
html body #suivis.suivis.amis.ouvert .am-qui .sv-n{min-width:0;display:flex;flex-direction:column;gap:2px}
html body #suivis.suivis.amis.ouvert :is(.am-qui .sv-n b,.am-l .bu-n b){font-size:14px;font-weight:650;color:var(--am-txt);letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #suivis.suivis.amis.ouvert .am-qui .sv-n b em{display:inline-block;vertical-align:1px;margin-left:6px;padding:1px 6px;border-radius:6px;font-size:9.5px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;font-style:normal;background:rgba(var(--am-vert-rgb),.14);color:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .am-qui .sv-n b em.am-rang{text-transform:none;letter-spacing:0;font-size:10px}
html body #suivis.suivis.amis.ouvert :is(.am-qui .sv-n i,.am-l .bu-n i){font-size:12.5px;color:var(--am-dim);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #suivis.suivis.amis.ouvert .am-l.en_ligne .sv-n i{color:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .am-l:is(.en_jeu,.aoe4) .sv-n i{color:var(--am-cyan)}
html body #suivis.suivis.amis.ouvert .am-l:is(.en_jeu,.aoe4) .am-qui .sv-av :is(.av,img){box-shadow:0 0 0 2px var(--am-fond),0 0 0 3.5px rgba(var(--am-cyan-rgb),.7)}

/* « en jeu » sur un jeu connu : une carte avec l'image du jeu, fondue vers la gauche */
html body #suivis.suivis.amis.ouvert .am-l.a-jeu{min-height:64px;margin:2px 0;padding:8px 10px;border:1px solid var(--am-trait);overflow:hidden;isolation:isolate;
  background:var(--am-fond2) !important}
html body #suivis.suivis.amis.ouvert .am-l.a-jeu::before{content:'';position:absolute;inset:0 0 0 38%;z-index:-1;background:var(--jeu-img) center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 70%);mask-image:linear-gradient(90deg,transparent,#000 70%);opacity:.55;transition:opacity .2s,transform .4s}
html body #suivis.suivis.amis.ouvert .am-l.a-jeu::after{content:'';position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,var(--am-fond2) 30%,color-mix(in srgb,var(--am-fond2) 55%,transparent) 70%,transparent)}
html body #suivis.suivis.amis.ouvert .am-l.a-jeu:hover::before{opacity:.75;transform:scale(1.04)}
html body #suivis.suivis.amis.ouvert .am-l.a-jeu .sv-n i{font-weight:600;text-shadow:0 1px 8px rgba(0,0,0,.6)}
html[data-theme="clair"] body #suivis.suivis.amis.ouvert .am-l.a-jeu .sv-n i{text-shadow:none}
html[data-theme="clair"] body #suivis.suivis.amis.ouvert .am-l.a-jeu::before{opacity:.35}

/* --- boutons de la ligne (message, inviter, +) --- */
html body #suivis.suivis.amis.ouvert .am-act{gap:5px}
html body #suivis.suivis.amis.ouvert .am-act button{width:34px;height:34px;border-radius:11px !important;background:rgba(var(--am-encre),.08) !important;
  border:1px solid var(--am-trait) !important;color:var(--am-txt) !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .15s,color .15s,transform .15s}
html body #suivis.suivis.amis.ouvert .am-act button:hover{background:var(--am-vert) !important;border-color:transparent !important;color:var(--am-encre-vert) !important;transform:translateY(-1px)}
html body #suivis.suivis.amis.ouvert .am-act button :is(svg,.gl){width:16px !important;height:16px !important}

/* --- messages --- */
html body #suivis.suivis.amis.ouvert .am-msg .am-liste{padding-top:8px}
html body #suivis.suivis.amis.ouvert .am-msg .am-l{display:flex;align-items:center;width:100%;gap:12px;padding:6px 10px;border:0;text-align:left;color:inherit;font:inherit;cursor:pointer}
html body #suivis.suivis.amis.ouvert .am-msg .bu-n{display:flex;flex-direction:column;gap:2px;min-width:0}
html body #suivis.suivis.amis.ouvert .bu-b{margin-left:auto;min-width:20px;height:20px;padding:0 6px;font-size:11px;background:var(--am-cyan);color:#04262c}

/* --- conversation privée ouverte (refonte v3, 09/10/2026) : une vraie messagerie — en-tête de la personne, bulles, saisie en pilule --- */
/* le panneau se resserre : en-tête réduit au titre, cartes d'invitation masquées le temps de la conversation */
html body #suivis.suivis.amis.ouvert.en-mp > .sv-tete{padding:14px 110px 14px 20px !important;min-height:66px}
html body #suivis.suivis.amis.ouvert.en-mp > .sv-tete b{font-size:16px}
html body #suivis.suivis.amis.ouvert.en-mp > .sv-tete .sv-avs{display:none !important}
html body #suivis.suivis.amis.ouvert.en-mp .am-cloche,html body #suivis.suivis.amis.ouvert.en-mp > .sv-tete::after{top:50%;transform:translateY(-50%)}
html body #suivis.suivis.amis.ouvert.en-mp > .sv-tete :is(.am-n,.sv-mpn){display:inline-grid !important}
html body #suivis.suivis.amis.ouvert.en-mp > .sv-inv,html body #suivis.suivis.amis.ouvert.en-mp > .am-regl{display:none !important}
html body #suivis.suivis.amis.ouvert > .am-mp{display:flex !important;flex-direction:column;padding:0 !important;overflow:hidden !important}
/* en-tête de la conversation */
html body #suivis.suivis.amis.ouvert .am-mp-t{flex:none;display:flex;align-items:center;gap:10px;margin:0;padding:10px 12px;border-radius:0;background:var(--am-fond2);
  border:0;border-bottom:1px solid var(--am-trait)}
html body #suivis.suivis.amis.ouvert .am-retour{flex:none;width:36px;min-height:36px;height:36px;padding:0;border-radius:12px;font-size:0 !important;color:transparent;
  border:1px solid var(--am-trait);background:var(--am-s1) center/16px no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M10 3 5 8l5 5' fill='none' stroke='%238d929a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/></svg>")}
html body #suivis.suivis.amis.ouvert .am-retour:hover{background-color:var(--am-s3)}
html body #suivis.suivis.amis.ouvert .am-mp-t .sa-av{position:relative;flex:none;width:40px;height:40px}
html body #suivis.suivis.amis.ouvert .am-mp-t .sa-av :is(.av,img){width:40px !important;height:40px !important;border-radius:50% !important;border:0 !important;
  background:var(--am-av) !important;font-size:15px !important;font-weight:600;color:var(--am-txt) !important}
html body #suivis.suivis.amis.ouvert .am-mp-t .sa-av .sv-pt{position:absolute;right:-2px;bottom:-2px;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 3px var(--am-fond2);animation:none}
html body #suivis.suivis.amis.ouvert .am-mp-qui{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;line-height:1.25}
html body #suivis.suivis.amis.ouvert .am-mp-qui b{font-size:15px;font-weight:700;color:var(--am-txt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #suivis.suivis.amis.ouvert .am-mp-qui i{font-style:normal;font-size:12px;color:var(--am-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #suivis.suivis.amis.ouvert .am-mp-qui i.en_ligne{color:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .am-mp-qui i:is(.en_jeu,.aoe4){color:var(--am-cyan)}
html body #suivis.suivis.amis.ouvert .am-mp-b{flex:none;display:grid;place-items:center;width:36px;height:36px;min-height:0;padding:0;border-radius:12px;
  border:1px solid var(--am-trait);background:var(--am-s1);color:var(--am-txt);cursor:pointer;text-decoration:none;transition:background .15s,color .15s}
html body #suivis.suivis.amis.ouvert .am-mp-b:hover{background:var(--am-vert);border-color:transparent;color:var(--am-encre-vert)}
html body #suivis.suivis.amis.ouvert .am-mp-b :is(svg,.gl){width:17px !important;height:17px !important;color:inherit}
/* le fil : plus de boîte dans la boîte, ni d'en-tête « Message privé » (l'en-tête de la conversation le dit) */
html body #suivis.suivis.amis.ouvert .am-mp-c{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
html body #suivis.suivis.amis.ouvert .am-mp-c > .ce,html[data-theme] body #suivis.suivis.amis.ouvert .am-mp-c > .ce{flex:1 1 auto;min-height:0;height:auto !important;margin:0 !important;
  padding:0 12px 12px !important;border:0 !important;border-radius:0 !important;background:none !important;background-image:none !important;box-shadow:none !important}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-tete{display:none !important}
html body #suivis.suivis.amis.ouvert .am-mp-c > .ce::before{display:none !important}   /* trait décoratif du haut des panneaux : doublait celui de l'en-tête */
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-corps{flex:1 1 0 !important;min-height:0;display:flex !important;flex-direction:column;padding:0 !important;border:0 !important}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log,html[data-theme] body #suivis.suivis.amis.ouvert .am-mp-c .ce-log{flex:1 1 auto;display:flex !important;flex-direction:column;
  gap:2px;min-height:0 !important;padding:14px 2px 10px !important;border-radius:0 !important}
/* les bulles : l'autre à gauche, moi à droite en Volt */
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l{display:flex !important;flex-direction:column;align-self:flex-start;max-width:80%;margin:0;
  padding:8px 12px 5px !important;border-radius:18px 18px 18px 6px;background:var(--am-s2) !important;color:var(--am-txt);font-size:14px;line-height:1.4;
  position:relative;animation:amBulle .18s ease-out}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l.moi{align-self:flex-end;border-radius:18px 18px 6px 18px;background:var(--am-vert) !important;color:var(--am-encre-vert)}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l:hover{filter:brightness(1.06)}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l > .cr-nick{display:none !important}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l > .cl-text{display:block;color:inherit}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l.moi a{color:inherit;text-decoration:underline}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l > .cl-time,
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-compact .ce-log .cl-l > .cl-time{display:block !important;position:static !important;align-self:flex-end;margin:1px 0 0 12px;
  font-family:inherit;font-size:10px;font-variant-numeric:tabular-nums;color:inherit;opacity:.55}
/* une suite de messages de la même personne se resserre ; on change de personne : un peu d'air */
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l.moi + .cl-l:not(.moi),
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l:not(.moi) + .cl-l.moi{margin-top:10px}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l:not(.moi) + .cl-l:not(.moi){border-top-left-radius:6px}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-log .cl-l.moi + .cl-l.moi{border-top-right-radius:6px}
@keyframes amBulle{from{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:none}}
html body #suivis.suivis.amis.ouvert .am-mp-c .cl-jour{align-self:stretch;margin:6px 4px 10px}
html body #suivis.suivis.amis.ouvert .am-mp-c .cl-jour span{background:var(--am-s1);color:var(--am-dim);font-size:10px}
html body #suivis.suivis.amis.ouvert .am-mp-c .cl-sys{align-self:center;margin:6px 0;padding:4px 12px;border-radius:999px;font-size:11.5px;color:var(--am-dim);background:var(--am-s1)}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-calme{margin:auto;color:var(--am-dim)}
/* saisie : une pilule, le bouton d'envoi dedans */
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form{flex:none;display:flex;align-items:center;gap:6px;margin:0 !important;padding:5px 5px 5px 16px;border-radius:999px;
  background:var(--am-fond2);border:1px solid var(--am-trait);transition:border-color .15s,box-shadow .15s}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form:focus-within{border-color:rgba(var(--am-vert-rgb),.6);box-shadow:0 0 0 3px rgba(var(--am-vert-rgb),.14)}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form input,html[data-theme] body #suivis.suivis.amis.ouvert .am-mp-c .ce-form input{flex:1;min-width:0;min-height:36px;padding:0 !important;
  border:0 !important;border-radius:0;background:none !important;box-shadow:none !important;color:var(--am-txt);font-size:14px}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form input:focus{outline:none;box-shadow:none !important}
html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form button,html[data-theme] body #suivis.suivis.amis.ouvert .am-mp-c .ce-form button{width:38px;height:38px;border-radius:50%;
  background:var(--am-vert);color:var(--am-encre-vert);box-shadow:0 6px 16px -8px rgba(var(--am-vert-rgb),.9)}
@media (max-width:1199px){
  html body #suivis.suivis.amis.ouvert :is(.am-retour,.am-mp-b){width:42px;height:42px;min-height:42px;border-radius:14px}
  html body #suivis.suivis.amis.ouvert .am-mp-c .ce-form button{width:42px;height:42px}
}

/* --- groupe --- */
html body #suivis.suivis.amis.ouvert .am-grp-vide{margin:12px 2px 6px;padding:24px 18px 18px;border-radius:20px;text-align:center;
  background:radial-gradient(100% 70% at 50% 0%,rgba(var(--am-vert-rgb),.12),transparent 70%),var(--am-fond2);border:1px solid var(--am-trait)}
html body #suivis.suivis.amis.ouvert .am-grp-vide::before{content:'';display:block;width:52px;height:52px;margin:0 auto 12px;border-radius:16px;
  background:rgba(var(--am-vert-rgb),.14) center/26px no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23c6f500' stroke-width='1.6' stroke-linecap='round'><circle cx='10' cy='6.5' r='2.3'/><circle cx='4.8' cy='12.5' r='1.9'/><circle cx='15.2' cy='12.5' r='1.9'/><path d='M6.5 11.2 8.6 8.4M13.5 11.2l-2.1-2.8M6.8 13h6.4'/></svg>")}
html[data-theme="clair"] body #suivis.suivis.amis.ouvert .am-grp-vide::before{filter:brightness(.55) saturate(1.4)}
html body #suivis.suivis.amis.ouvert .am-grp-vide p{margin:0 0 16px;font-size:13px;line-height:1.55;color:var(--am-dim)}
html body #suivis.suivis.amis.ouvert .am-grp-creer{flex-direction:column;gap:8px}
html body #suivis.suivis.amis.ouvert .am-grp-creer input{min-height:42px;border-radius:13px;padding:0 14px;background:var(--am-fond);border:1px solid var(--am-trait);color:var(--am-txt);text-align:center}
html body #suivis.suivis.amis.ouvert .am-grp-creer input:focus{outline:none;border-color:rgba(var(--am-vert-rgb),.55);box-shadow:0 0 0 3px rgba(var(--am-vert-rgb),.15)}
html body #suivis.suivis.amis.ouvert .am-grp-creer .bt{min-height:42px;border-radius:13px;font-weight:700;box-shadow:none !important;background-image:none !important;
  background-color:var(--am-vert) !important;color:var(--am-encre-vert) !important;border:0 !important}
html body #suivis.suivis.amis.ouvert .am-grp-note{margin:10px 4px;padding:10px 12px;border-radius:13px;background:var(--am-fond2);border:1px solid var(--am-trait);font-size:12px}
html body #suivis.suivis.amis.ouvert .am-grp-plus summary{list-style:none;margin:6px 4px;padding:10px 12px;border-radius:13px;border:1px dashed var(--am-s3);font-weight:600}
html body #suivis.suivis.amis.ouvert .am-grp-plus summary::-webkit-details-marker{display:none}
html body #suivis.suivis.amis.ouvert .am-grp-a .bt{border-radius:11px}

/* =============================================================== PC */
@media (min-width:1200px){
  html body #suivis.suivis.amis.ouvert{width:min(400px,calc(100vw - 36px)) !important;height:min(660px,calc(100vh - 100px))}
  /* boutons au survol, posés sur la fin de la ligne avec un fondu */
  html body #suivis.suivis.amis.ouvert .am-act{right:10px;padding:0 0 0 30px;background:linear-gradient(90deg,transparent,var(--am-fond) 28px) !important;border-radius:0}
  html body #suivis.suivis.amis.ouvert .am-l.a-jeu .am-act{background:none !important}
}
/* =============================================================== téléphone, tablette (feuille) */
@media (max-width:1199px){
  html body #suivis.suivis.amis.ouvert{border-radius:24px !important}
  html body #suivis.suivis.amis.ouvert > .sv-tete{padding-right:116px !important}
  html body #suivis.suivis.amis.ouvert .am-cloche,html body #suivis.suivis.amis.ouvert > .sv-tete::after{width:44px !important;height:44px !important;border-radius:15px}
  html body #suivis.suivis.amis.ouvert .am-cloche{right:66px}
  html body #suivis.suivis.amis.ouvert .am-onglets button{min-height:60px;font-size:12.5px}
  html body #suivis.suivis.amis.ouvert .am-act button{width:40px;height:40px;border-radius:13px !important}
  html body #suivis.suivis.amis.ouvert .am-qui{padding-right:96px}
  html body #suivis.suivis.amis.ouvert .inv-b{min-height:40px;padding:0 16px;font-size:13.5px}
}

/* =============================================================== pied du panneau (09/10/2026)
   Maxime : « parfois le bouton se met en haut au lieu d'être en bas » : les ronds du vocal (lancer un vocal de groupe, réglages du
   casque) étaient posés par voix.js dans la barre d'onglets ; en conversation privée la barre restait vide (gardée par la fusion pour
   ces ronds) et faisait une bande en haut. Ils vont maintenant dans .am-pied (en bas), et rien de tout ça ne s'affiche en conversation. */
html body #suivis.suivis.amis.ouvert.en-mp > :is(.am-onglets,.am-deux,.am-pied){display:none !important}
html body #suivis.suivis.amis.ouvert > .am-pied{flex:none;display:flex;align-items:center;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  border-top:1px solid var(--am-trait);background:var(--am-fond2)}
html body #suivis.suivis.amis.ouvert > .am-pied:empty,html body #suivis.suivis.amis:not(.ouvert) > .am-pied{display:none}
html body #suivis.suivis.amis.ouvert .am-pied .voix-ong{position:static;flex:none;width:38px;height:38px;min-height:0;margin:0;padding:0 !important;display:inline-flex;
  align-items:center;justify-content:center;gap:8px;border-radius:12px !important;border:1px solid var(--am-trait);background:var(--am-s1) !important;color:var(--am-txt);
  box-shadow:none !important;cursor:pointer;transition:background .15s,color .15s}
html body #suivis.suivis.amis.ouvert .am-pied .voix-ong::after{display:none}
html body #suivis.suivis.amis.ouvert .am-pied .voix-ong:hover{background:var(--am-s3) !important}
/* « Lancer un vocal de groupe » : un vrai bouton large avec son intitulé (le title, déjà traduit par voix.js) */
html body #suivis.suivis.amis.ouvert .am-pied .voix-groupe{flex:1 1 auto;width:auto;padding:0 14px !important;justify-content:flex-start;
  background:rgba(var(--am-vert-rgb),.12) !important;border-color:rgba(var(--am-vert-rgb),.25);color:var(--am-vert)}
html body #suivis.suivis.amis.ouvert .am-pied .voix-groupe::after{content:attr(title);display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  position:static;transform:none;background:none;box-shadow:none;height:auto;width:auto}
html body #suivis.suivis.amis.ouvert .am-pied .voix-groupe:hover{background:var(--am-vert) !important;color:var(--am-encre-vert)}
html body #suivis.suivis.amis.ouvert .am-pied .voix-ong .vx-ic{width:18px;height:18px;flex:none}
/* si voix.js les pose encore dans les onglets (ancienne version en cache) : petits ronds discrets en bout de barre */
html body #suivis.suivis.amis.ouvert .am-onglets .voix-ong{flex:none;align-self:center;width:32px;min-height:32px;height:32px;padding:0 !important;border-radius:10px !important}
html body #suivis.suivis.amis.ouvert .am-onglets .voix-ong::after{display:none}

/* --- « Inviter dans mon clan » sur la ligne d'un ami --- */
html body #suivis.suivis.amis.ouvert .am-act .am-clan-add:disabled{opacity:.45;cursor:default;transform:none}
html body #suivis.suivis.amis.ouvert .am-act .am-clan-add:disabled:hover{background:rgba(var(--am-encre),.08) !important;color:var(--am-txt) !important}
html body #suivis.suivis.amis.ouvert .am-act .am-clan-add svg{width:17px !important;height:17px !important}

/* téléphone / tablette : jusqu'à quatre boutons sur une ligne → la ligne passe en flex, le nom se coupe proprement au lieu d'être recouvert */
@media (max-width:1199px){
  html body #suivis.suivis.amis.ouvert .am-l{display:flex !important;align-items:center;gap:8px}
  html body #suivis.suivis.amis.ouvert .am-qui{flex:1 1 auto;min-width:0;padding-right:0 !important}
  html body #suivis.suivis.amis.ouvert .am-act{position:static !important;transform:none !important;top:auto !important;align-self:center;flex:none;display:flex;gap:6px;background:none !important;padding:0 !important}
  html body #suivis.suivis.amis.ouvert .am-act button{width:38px;height:38px}
}

/* =============================================================== pastille repliée compacte (passe design 09/10/2026)
   La carte sur deux lignes (58 px) recouvrait trop le bas des pages : une ligne, 46 px — visages, « ● 7 en ligne », pastilles. */
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete{grid-template-columns:auto auto auto auto !important;grid-template-rows:auto !important;
  grid-template-areas:"av c n m" !important;min-height:46px !important;padding:5px 14px 5px 6px !important;column-gap:10px !important;border-radius:999px}
html body #suivis.suivis.amis:not(.ouvert){border-radius:999px !important}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete:not(.avec-avs){padding-left:14px !important}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete b{display:none !important}
html body #suivis.suivis.amis:not(.ouvert) .sv-av1{width:32px;height:32px}
html body #suivis.suivis.amis:not(.ouvert) .sv-c{font-size:13px;font-weight:600;color:var(--am-txt)}
html body #suivis.suivis.amis:not(.ouvert) > .sv-tete::before{width:20px;height:20px}
