/* MesLapins — mini-profil (DA) */
[data-profil], [data-profil-guest] { cursor: pointer; }
[data-profil]:hover .nm, [data-profil-guest]:hover .nm, [data-profil]:focus-visible, [data-profil-guest]:focus-visible { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(255,125,68,.6); }
.mlp-card { --ink: #1C3F39; --orange: #FF7D44; --orange-d: #E0561A; --text: #3E4B48; --muted: #76817E; --line: #ECE6DF;
  position: fixed; z-index: 100002; width: 320px; max-width: calc(100vw - 24px); max-height: 80vh; overflow: auto; box-sizing: border-box;
  background: #fff; border: 1px solid #F4E6DC; border-radius: 20px; box-shadow: 0 24px 50px -18px rgba(28,63,57,.5);
  font-family: 'Nunito', system-ui, sans-serif; color: var(--text); font-size: 14px; line-height: 1.45;
  opacity: 0; transform: translateY(6px) scale(.98); transition: opacity .2s, transform .25s cubic-bezier(.2,.9,.3,1.2); }
.mlp-card *, .mlp-card *::before { box-sizing: border-box; }
.mlp-card.on { opacity: 1; transform: none; }
.mlp-card.sheet { left: 0 !important; right: 0; bottom: 0; top: auto !important; width: 100%; max-width: 100%; border-radius: 22px 22px 0 0; transform: translateY(100%); padding-bottom: env(safe-area-inset-bottom, 0); }
.mlp-card.sheet.on { transform: none; }
.mlp-in { padding: 16px 16px 14px; }
.mlp-x { all: unset; cursor: pointer; position: absolute; top: 10px; right: 10px; width: 28px; height: 28px; border-radius: 50%; background: #F3EFEA; text-align: center; line-height: 28px; font-size: 12px; font-weight: 900; color: var(--muted); }
.mlp-head { display: flex; align-items: center; gap: 12px; padding-right: 26px; }
.mlp-av { position: relative; flex: none; width: 34px; height: 34px; border-radius: 50%; overflow: hidden; display: flex; align-items: center; justify-content: center; font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 15px; color: #fff; }
.mlp-av.big { width: 52px; height: 52px; font-size: 22px; box-shadow: 0 0 0 3px #fff, 0 4px 12px -4px rgba(28,63,57,.45); }
.mlp-av img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.mlp-av.t0 { background: #FF7D44; } .mlp-av.t1 { background: #2F9E6E; } .mlp-av.t2 { background: #7C5CC4; } .mlp-av.t3 { background: #E0A21A; } .mlp-av.t4 { background: #2B8A86; } .mlp-av.t5 { background: #1C3F39; }
.mlp-name { display: block; font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 19px; line-height: 1.15; color: var(--ink); }
.mlp-name em { font-style: normal; font-family: 'Nunito', sans-serif; font-size: 11px; background: var(--orange); color: #fff; border-radius: 20px; padding: 1px 7px; vertical-align: 3px; }
.mlp-sub { display: block; font-size: 12.5px; font-weight: 700; color: var(--muted); }
.mlp-sec { margin-top: 14px; }
.mlp-sec h4 { margin: 0 0 6px !important; font-family: 'Nunito', sans-serif !important; font-size: 11.5px !important; font-weight: 900 !important; letter-spacing: .05em; text-transform: uppercase; color: var(--muted) !important; display: flex; justify-content: space-between; }
.mlp-sec h4 span { text-transform: none; letter-spacing: 0; color: var(--ink); }
.mlp-lapins { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.mlp-lapin { text-align: center; min-width: 0; }
.mlp-lapin img, .mlp-lapin .ph { width: 100%; aspect-ratio: 1; border-radius: 14px; object-fit: cover; display: flex; align-items: center; justify-content: center; background: #FFF3EA; font-size: 26px; }
.mlp-lapin b { display: block; margin-top: 4px; font-size: 13px; color: var(--ink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mlp-lapin small { display: block; font-size: 11px; color: var(--muted); font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mlp-game { display: grid; grid-template-columns: 22px 1fr repeat(3, auto); align-items: center; gap: 6px 10px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 14px; background: #FAF9F6; margin-bottom: 6px; }
.mlp-game .ic { font-size: 16px; } .mlp-game .t { font-weight: 800; color: var(--ink); font-size: 13.5px; }
.mlp-game div { text-align: center; line-height: 1.1; }
.mlp-game div b { display: block; font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 15px; color: var(--ink); }
.mlp-game div small { font-size: 10.5px; font-weight: 800; color: var(--muted); }
.mlp-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.mlp-pills span { font-size: 12.5px; font-weight: 800; border-radius: 20px; padding: 2px 10px; }
.mlp-pills .m { background: #EAF1FE; color: #3B82F6; } .mlp-pills .f { background: #FDECF4; color: #EC4899; }
.mlp-line { margin: 0; font-weight: 800; color: var(--ink); }
.mlp-empty, .mlp-loading { margin: 12px 0 0; color: var(--muted); font-weight: 700; text-align: center; }
.mlp-loading { margin: 6px 0; }
.mlp-note { margin: 12px 0 0; font-size: 12.5px; font-weight: 700; color: var(--muted); background: #FFF6F1; border: 1px solid #FFD9C2; border-radius: 12px; padding: 8px 10px; }
.mlp-note a { color: var(--orange-d); font-weight: 900; }
.mlp-cta { display: block; margin-top: 14px; text-align: center; background: var(--orange); color: #fff !important; text-decoration: none !important; font-weight: 800; padding: 10px; border-radius: 30px; }

/* Réglage dans l'espace adoptants */
.mlea-profil-toggle { display: flex; align-items: center; gap: 10px; margin: -4px 0 14px; font-weight: 700; font-size: 14px; color: #3E4B48; cursor: pointer; }
.mlea-profil-toggle input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.mlea-profil-toggle .sw { flex: none; position: relative; width: 40px; height: 24px; border-radius: 30px; background: #DDD6CD; transition: background-color .18s; }
.mlea-profil-toggle .sw::after { content: ''; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(28,63,57,.25); transition: transform .18s; }
.mlea-profil-toggle input:checked + .sw { background: #2F9E6E; }
.mlea-profil-toggle input:checked + .sw::after { transform: translateX(16px); }
.mlea-profil-toggle small { display: block; font-size: 12px; color: #76817E; font-weight: 600; }

.mlp-av.ad.big { box-shadow: 0 0 0 3px #fff, 0 0 0 6px #FF7D44, 0 4px 12px -4px rgba(224,86,26,.55); }

/* 2.4 : cadre de la carte selon le grade (l'avatar porte son cadre animé : frames.css) */
@property --mlp-a { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
.mlp-card.g1, .mlp-card.g2, .mlp-card.g3, .mlp-card.g4, .mlp-card.g5 { border: 2px solid transparent; background: linear-gradient(#fff, #fff) padding-box, var(--bd) border-box; }
.mlp-card.g1 { --bd: linear-gradient(135deg, #FFE3D2, #FF9E73 50%, #FFE3D2); --tint: #FFF3EA; --dot: rgba(255,125,68,.16); }
.mlp-card.g2 { --bd: linear-gradient(135deg, #F1D2B4, #B9763D 45%, #F6E2CE 60%, #9A5B26); --tint: #F9EDE2; --dot: rgba(196,122,61,.16); }
.mlp-card.g3 { --bd: linear-gradient(135deg, #E9EEF1, #8E9BA6 40%, #FFFFFF 55%, #6B7882); --tint: #EEF2F5; --dot: rgba(120,134,143,.18); }
.mlp-card.g4 { --bd: linear-gradient(135deg, #FFF0B8, #E0A21A 40%, #FFF6D6 55%, #B37A06); --tint: #FDF3D6; --dot: rgba(224,162,26,.2); box-shadow: 0 24px 50px -18px rgba(179,122,6,.45); }
.mlp-card.g5 { --bd: conic-gradient(from var(--mlp-a), #7C5CC4, #E85BA8, #FFC94A, #7C5CC4); --tint: #F1EBFC; --dot: rgba(124,92,196,.18); box-shadow: 0 24px 50px -16px rgba(124,92,196,.55), 0 0 0 4px rgba(124,92,196,.08); animation: mlp-spin 6s linear infinite; }
@keyframes mlp-spin { to { --mlp-a: 360deg; } }
.mlp-card.g1::before, .mlp-card.g2::before, .mlp-card.g3::before, .mlp-card.g4::before, .mlp-card.g5::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 92px; pointer-events: none; border-radius: 18px 18px 0 0;
  background: radial-gradient(var(--dot) 1.2px, transparent 1.6px) 0 0 / 12px 12px, linear-gradient(180deg, var(--tint), rgba(255,255,255,0));
  -webkit-mask: linear-gradient(#000 40%, transparent); mask: linear-gradient(#000 40%, transparent); }
.mlp-in { position: relative; }
.mlp-wm { position: absolute; top: 6px; right: 46px; font-size: 44px; line-height: 1; opacity: .16; transform: rotate(12deg); pointer-events: none; filter: saturate(1.2); }
.mlp-head .mlf { margin: 4px 6px 4px 4px; }
@media (prefers-reduced-motion: reduce) { .mlp-card.g5 { animation: none; } }
.mlp-grade { display: inline-flex; align-items: center; gap: 4px; margin-top: 3px; font-size: 12px; font-weight: 900; border-radius: 20px; padding: 1px 9px; color: #fff; background: #FF7D44; text-decoration: none !important; }
.mlp-grade.g2 { background: #C47A3D; } .mlp-grade.g3 { background: #78868F; } .mlp-grade.g4 { background: #E0A21A; } .mlp-grade.g5 { background: #7C5CC4; }
.mlp-grade small { font-weight: 800; opacity: .85; font-size: 11px; }
.mlp-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.mlp-badges span { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 800; color: #1C3F39; background: #FFF3EA; border: 1px solid #FFD9C2; border-radius: 20px; padding: 2px 9px 2px 6px; }
/* 2.5.4 : la croix passe au-dessus du contenu de la carte (sinon le contenu captait le clic) */
.mlp-x { z-index: 5; }
.mlp-x:hover { background: #ECE6DF; color: #1C3F39; }

/* 2.5.5 : la fiche passe au-dessus des boutons flottants (WhatsApp, chat…) */
.mlp-card { z-index: 2147483646 !important; }
.mlp-scrim { position: fixed; inset: 0; z-index: 2147483645; background: rgba(28,63,57,.35); opacity: 0; transition: opacity .2s; }
.mlp-scrim.on { opacity: 1; }

/* Emojis remplacés en images par WordPress (img.emoji) : ne pas les traiter comme une photo d'avatar */
.mlf img.emoji, .mlg-av img.emoji, [class*="-av"] img.emoji { position: static !important; inset: auto !important; width: 1em !important; height: 1em !important; object-fit: contain !important; margin: 0 !important; vertical-align: middle !important; }
