.dfa .ph{position:relative;isolation:isolate;width:390px;height:844px;overflow:hidden;background:#0d1236;color:#fff;cursor:pointer;user-select:none}
.dfa .bg{position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 45% at 50% 42%,#2346c9 0%,#152a86 35%,#0d1650 65%,#080b26 100%)}
.dfa .bg:after{content:"";position:absolute;inset:0;background:radial-gradient(40% 25% at 50% 42%,rgba(120,170,255,.45),transparent 70%);opacity:var(--pw,.3);transition:opacity .4s}
.dfa .rays{position:absolute;left:50%;top:42%;width:900px;height:900px;margin:-450px 0 0 -450px;z-index:-1;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.05) 0 6deg,transparent 6deg 18deg);animation:dfa-spin 30s linear infinite;opacity:.7;mask:radial-gradient(circle,#000 10%,transparent 60%);-webkit-mask:radial-gradient(circle,#000 10%,transparent 60%)}
@keyframes dfa-spin{to{transform:rotate(360deg)}}
.dfa .tt{position:absolute;top:58px;left:0;right:0;text-align:center;transform:rotate(-6deg)}
.dfa .tt b{display:block;font:900 italic 54px/0.95 var(--dfj);letter-spacing:-.01em;color:#e9f73a;text-shadow:0 0 18px rgba(228,242,34,.75),0 4px 0 #0a0d2a,0 0 2px #fff}
.dfa .tt b+b{font-size:44px;margin-top:2px;padding-left:40px}
.dfa .tt b span{display:inline-block;opacity:0;transform:translateY(-90px) scale(2.2) rotate(-14deg)}
.dfa .go .tt b span{animation:dfa-let .42s cubic-bezier(.2,1.7,.4,1) forwards;animation-delay:calc(.75s + var(--i)*.055s)}
@keyframes dfa-let{0%{opacity:0;transform:translateY(-90px) scale(2.2) rotate(-14deg)}70%{opacity:1;transform:translateY(4px) scale(.92) rotate(2deg)}100%{opacity:1;transform:none}}
.dfa .tt.glitch b{animation:dfa-gl .32s steps(2) 1}
@keyframes dfa-gl{0%{text-shadow:-5px 0 #ff2bd6,5px 0 #22e3ff,0 0 18px rgba(228,242,34,.75)}50%{text-shadow:4px 2px #ff2bd6,-4px -2px #22e3ff,0 0 18px rgba(228,242,34,.75);transform:translateX(3px) skewX(-8deg)}100%{}}
@keyframes dfa-slam{0%{opacity:0;scale:1.8}60%{opacity:1;scale:.94}100%{opacity:1;scale:1}}
.dfa .duo{position:absolute;top:212px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:118px}
.dfa .duo>div{opacity:0}
.dfa .go .duo>div:first-child{animation:dfa-clashL .95s cubic-bezier(.5,0,.3,1) forwards}
.dfa .go .duo>div:last-child{animation:dfa-clashR .95s cubic-bezier(.5,0,.3,1) forwards}
@keyframes dfa-clashL{0%{opacity:1;transform:translateX(-260px) rotate(-25deg)}42%{opacity:1;transform:translateX(62px) rotate(8deg) scale(1.25)}55%{transform:translateX(40px) scale(1.1)}100%{opacity:1;transform:none}}
@keyframes dfa-clashR{0%{opacity:1;transform:translateX(260px) rotate(25deg)}42%{opacity:1;transform:translateX(-62px) rotate(-8deg) scale(1.25)}55%{transform:translateX(-40px) scale(1.1)}100%{opacity:1;transform:none}}
.dfa .vsb{position:absolute;left:50%;top:218px;width:46px;height:46px;margin-left:-23px;display:grid;place-items:center;border-radius:14px;transform:rotate(45deg) scale(0);background:#0d1236;border:3px solid var(--lime);box-shadow:0 0 22px rgba(228,242,34,.7);z-index:2}
.dfa .vsb b{transform:rotate(-45deg);font:900 italic 20px var(--dfj);color:var(--lime)}
.dfa .go .vsb{animation:dfa-vsb .5s cubic-bezier(.2,1.8,.4,1) .55s forwards}
@keyframes dfa-vsb{to{transform:rotate(45deg) scale(1)}}
.dfa .ring{position:absolute;border-radius:50%;border:4px solid #fff;pointer-events:none;z-index:6}
.dfa #dfa-fx,.dfa #dfa-fx2{position:absolute;inset:0;width:390px;height:844px;pointer-events:none}
.dfa #dfa-fx{z-index:-1}
.dfa #dfa-fx2{z-index:8}
.dfa #dfa-bob{animation:dfa-bob 1.6s ease-in-out infinite}
@keyframes dfa-bob{50%{transform:translateY(-7px)}}
.dfa .core.lift #dfa-bob{animation:none}
.dfa .cd{position:absolute;left:0;right:0;top:300px;text-align:center;z-index:7;pointer-events:none;font:900 italic 150px/1 var(--dfj);color:#fff;-webkit-text-stroke:5px #0d1236;paint-order:stroke fill;text-shadow:0 0 30px rgba(228,242,34,.9),0 8px 0 #0d1236;opacity:0}
.dfa .cd.on{animation:dfa-cd .7s cubic-bezier(.2,1.4,.4,1) forwards}
.dfa .cd.txt{font-size:52px;top:350px;color:var(--lime);-webkit-text-stroke:4px #0d1236}
@keyframes dfa-cd{0%{opacity:0;transform:scale(2.6) rotate(-8deg)}25%{opacity:1;transform:scale(.9) rotate(2deg)}40%{transform:scale(1.05)}75%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.6) translateY(-30px)}}
.dfa .duo .av{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;font:800 20px var(--dfj);border:2px solid rgba(255,255,255,.7);box-shadow:0 0 18px rgba(0,0,0,.4)}
.dfa .duo small{display:block;margin-top:6px;text-align:center;font:700 12px var(--dfj);color:rgba(255,255,255,.85)}
.dfa .core{position:absolute;left:50%;top:280px;width:190px;height:250px;margin-left:-95px;transform:translateY(-640px);opacity:0}
.dfa .go .core{animation:dfa-land .75s cubic-bezier(.45,0,.6,1) .95s forwards}
@keyframes dfa-land{0%{opacity:1;transform:translateY(-640px) scaleY(1.15)}78%{transform:translateY(0) scaleY(1.08)}86%{transform:translateY(6px) scaleY(.88) scaleX(1.08)}100%{opacity:1;transform:none}}
.dfa .core svg{width:100%;height:100%;overflow:visible}
.dfa .pad{position:absolute;left:50%;bottom:6px;width:170px;height:34px;margin-left:-85px;border-radius:50%;background:radial-gradient(closest-side,rgba(228,242,34,calc(.25 + var(--pw,.3)*.6)),transparent);filter:blur(4px)}
.dfa .padr{position:absolute;left:50%;bottom:14px;width:120px;height:18px;margin-left:-60px;border-radius:50%;border:2px dashed rgba(140,190,255,.7)}
.dfa #dfa-rk{position:absolute;left:0;right:0;top:0;bottom:0;animation:dfa-rumble calc(.16s - var(--pw,.3)*.08s) linear infinite}
@keyframes dfa-rumble{0%,100%{translate:0 0}25%{translate:calc(var(--pw,.3)*-2.4px) calc(var(--pw,.3)*1.4px)}50%{translate:calc(var(--pw,.3)*2px) 0}75%{translate:calc(var(--pw,.3)*-1px) calc(var(--pw,.3)*-1.6px)}}
.dfa #dfa-fl{transform-origin:95px 200px;transform:scaleY(calc(.25 + var(--pw,.3)*.9));transition:transform .3s}
.dfa #dfa-fl g{transform-origin:95px 200px;animation:dfa-flick .09s ease-in-out infinite alternate}
@keyframes dfa-flick{to{transform:scaleY(.82) scaleX(1.06)}}
.dfa .core.lift #dfa-rk{animation:none}
.dfa .core.lift .rkm{animation:dfa-lift 1s cubic-bezier(.55,0,.8,.4) forwards}
@keyframes dfa-lift{0%{transform:translateY(0)}15%{transform:translateY(6px)}100%{transform:translateY(-760px)}}
.dfa .core.lift #dfa-fl{transform:scaleY(2.6)}
.dfa .core.gone .rkm{opacity:0}
.dfa .smk{position:absolute;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(235,240,255,.85),rgba(170,185,230,.25) 70%,transparent);pointer-events:none;z-index:1}
.dfa .trail{position:absolute;left:50%;width:14px;margin-left:-7px;bottom:40px;height:0;background:linear-gradient(0deg,rgba(255,255,255,0),rgba(255,214,90,.9) 60%,#fff);filter:blur(3px);border-radius:7px;opacity:0}
.dfa .core.lift .trail{animation:dfa-trail 1s ease-in forwards}
@keyframes dfa-trail{0%{height:0;opacity:0}20%{opacity:1}100%{height:900px;opacity:0}}
.dfa .shake{animation:dfa-shk .28s linear}
@keyframes dfa-shk{0%,100%{translate:0 0}20%{translate:-5px 3px}40%{translate:5px -2px}60%{translate:-3px -3px}80%{translate:3px 2px}}
.dfa .board.low{opacity:0;transform:translateY(40px)}
.dfa .board{transition:opacity .4s,transform .4s;position:absolute;left:16px;right:16px;top:540px;padding:14px;border-radius:22px;background:linear-gradient(180deg,rgba(40,56,110,.75),rgba(20,28,66,.85));border:1.5px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 20px 40px rgba(0,0,0,.4)}
.dfa .lbl{margin:0 0 10px;text-align:center;font:800 11px var(--dfj);letter-spacing:.14em;color:rgba(255,255,255,.6)}
.dfa .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.dfa .c{position:relative;height:66px;border-radius:14px;background:linear-gradient(180deg,#1d2650,#141a3a);border:1.5px solid rgba(255,255,255,.1);box-shadow:inset 0 -3px 0 rgba(0,0,0,.35),0 4px 10px rgba(0,0,0,.3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;opacity:0;transform:translateY(14px) scale(.9);transition:opacity .25s,transform .35s cubic-bezier(.2,1.5,.4,1),filter .3s,background .3s}
.dfa .c.in{opacity:1;transform:none}
.dfa .c b{font:800 21px var(--dfj);line-height:1}
.dfa .c b i{font-style:normal;font:800 11px var(--dfj);margin-left:3px;opacity:.7;letter-spacing:.02em}
.dfa .seg{display:flex;gap:3px}
.dfa .seg s{width:10px;height:4px;border-radius:2px;background:rgba(120,200,90,.22);transition:background .12s}
.dfa .c.dead{filter:grayscale(1) brightness(.45);transform:scale(.96)}
.dfa .c.dead b{opacity:.5}
.dfa .c.win{border-color:var(--lime);background:linear-gradient(180deg,#3a4a10,#1e2608);box-shadow:0 0 0 3px rgba(228,242,34,.35),0 0 30px rgba(228,242,34,.55);animation:dfa-pulse .5s ease-in-out 3}
.dfa .c.win b{color:var(--lime)}
@keyframes dfa-pulse{50%{transform:scale(1.07)}}
.dfa .zap{position:absolute;inset:-14px -18px;pointer-events:none;overflow:visible;z-index:3}
.dfa .zap path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.dfa .zap .a{stroke:#9cc7ff;stroke-width:13;filter:blur(3px)}
.dfa .zap .b{stroke:#fff;stroke-width:4.5}
.dfa .zap .f{fill:#fff;opacity:0}
.dfa .flashc{position:absolute;inset:0;border-radius:14px;background:#fff;opacity:0;z-index:2;pointer-events:none}
.dfa .c.hit .flashc{animation:dfa-fc .45s ease-out}
@keyframes dfa-fc{0%{opacity:.95}100%{opacity:0}}
.dfa .spark{position:absolute;width:4px;height:4px;border-radius:50%;background:#dff0ff;box-shadow:0 0 6px #8cc0ff;z-index:4;pointer-events:none}
.dfa .white{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;z-index:8}
.dfa .white.on{animation:dfa-wh .6s ease-out}
@keyframes dfa-wh{0%{opacity:.95}100%{opacity:0}}
.dfa .ban{position:absolute;left:-20px;right:-20px;top:322px;height:128px;z-index:9;display:grid;place-items:center;background:linear-gradient(180deg,#f3ff4f,#d7ea00);clip-path:polygon(0 12%,100% 0,100% 88%,0 100%);transform:scaleX(0) rotate(-4deg);opacity:0;box-shadow:0 0 50px rgba(228,242,34,.6)}
.dfa .ban.on{animation:dfa-ban .5s cubic-bezier(.2,1.5,.4,1) forwards}
.dfa .ban .shine{position:absolute;top:0;bottom:0;width:70px;left:-90px;background:linear-gradient(100deg,transparent,rgba(255,255,255,.85),transparent);transform:skewX(-20deg)}
.dfa .ban.on .shine{animation:dfa-shine 1.1s ease-in-out .5s 2}
@keyframes dfa-shine{to{left:110%}}
.dfa .ban b.pop{animation:dfa-pop .18s ease-out}
@keyframes dfa-pop{50%{transform:scale(1.18)}}
.dfa .rec>div:nth-child(1){transform:translateX(-60px)}
.dfa .rec>div:nth-child(2){transform:translateX(60px)}
.dfa .rec>div{transition:transform .5s cubic-bezier(.2,1.4,.4,1)}
.dfa .rec.on>div{transform:none}
.dfa .fin.on{animation:dfa-cta 1.6s ease-in-out .6s infinite}
@keyframes dfa-cta{50%{box-shadow:0 0 0 8px rgba(228,242,34,.15),0 0 34px rgba(228,242,34,.55)}}
@keyframes dfa-ban{0%{transform:scaleX(0) rotate(-4deg);opacity:1}100%{transform:scaleX(1) rotate(-4deg);opacity:1}}
.dfa .ban div{text-align:center;color:#0d1236;transform:rotate(0deg)}
.dfa .ban b{display:block;font:900 italic 60px/1 var(--dfj);letter-spacing:-.02em}
.dfa .ban small{display:block;margin-top:2px;font:800 13px var(--dfj);letter-spacing:.12em}
.dfa .ban:before,.dfa .ban:after{content:"";position:absolute;width:60px;height:5px;background:#0d1236;top:18px;left:36px;transform:skewX(-30deg)}
.dfa .ban:after{top:auto;bottom:18px;left:auto;right:36px}
.dfa .rec{position:absolute;left:16px;right:16px;top:486px;z-index:9;display:grid;grid-template-columns:1fr 1fr;gap:10px;opacity:0;transform:translateY(10px);transition:all .4s}
.dfa .rec.on{opacity:1;transform:none}
.dfa .rec div{padding:10px;border-radius:14px;text-align:center;background:rgba(10,14,40,.82);border:1.5px solid rgba(255,255,255,.18);font:600 12px var(--dfj);color:rgba(255,255,255,.75)}
.dfa .rec div b{display:block;margin-top:2px;font:800 20px var(--dfj);color:#fff}
.dfa .rec div.k{grid-column:1/-1;font:500 11.5px/1.4 var(--dfj)}
.dfa .tap{position:absolute;bottom:26px;left:0;right:0;text-align:center;font:700 11px var(--dfj);letter-spacing:.16em;color:rgba(255,255,255,.45)}
.dfa .fin{position:absolute;left:16px;right:16px;bottom:58px;height:52px;border-radius:99px;background:var(--lime);color:#111;display:grid;place-items:center;font:800 15.5px var(--dfj);opacity:0;transform:translateY(10px);transition:all .4s;z-index:9}
.dfa .fin.on{opacity:1;transform:none}
/* v9.96 — « Défie ton pote » */
.dfi-jt{display:inline-block;margin-top:5px;padding:2px 8px;border-radius:99px;background:rgba(228,242,34,.14);color:#e4f222;font:700 11px var(--j)}
.pdu-s.dfi-bloc{position:relative;border:1.5px solid rgba(228,242,34,.6);background:linear-gradient(135deg,rgba(228,242,34,.16),rgba(255,255,255,.05))}
.dfi-tag{position:absolute;top:-10px;right:14px;padding:2px 9px;border-radius:99px;background:#e4f222;color:#111;font:800 10.5px var(--j);letter-spacing:.05em}
.dfi-p{margin:0 0 12px;font:500 13px/1.45 var(--j);color:rgba(255,255,255,.88)}
.dfi-p b{color:#e4f222}
.dfi-enc{margin:0 0 12px}
.dfi-raison{margin:0 0 10px;padding:12px;border-radius:14px;background:rgba(10,12,30,.4);text-align:center;font:600 13px var(--j);color:#fde68a}
.dfi-mm{display:grid;gap:7px}
.dfi-mm button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 12px;border-radius:14px;border:1.5px solid transparent;background:rgba(10,12,30,.4);color:#fff;text-align:left;cursor:pointer;font:inherit}
.dfi-mm button b{display:block;font:600 13.5px var(--j)}
.dfi-mm button small{font:500 11.5px var(--j);color:rgba(255,255,255,.65)}
.dfi-mm button i{font-style:normal;font:700 13px var(--j);color:rgba(255,255,255,.6)}
.dfi-mm button[aria-pressed="true"]{border-color:#e4f222;background:rgba(228,242,34,.1)}
.dfi-mm button[aria-pressed="true"] i{color:#e4f222}
.dfi-mm .dfi-plus{justify-content:center;border:1.5px dashed rgba(255,255,255,.3);background:none;font:700 12.5px var(--j)}
.dfi-ch{display:grid;grid-template-columns:1fr .8fr 1fr;gap:7px}
.dfi-ch button{padding:10px 4px;border-radius:14px;border:1.5px solid rgba(255,255,255,.14);background:rgba(10,12,30,.4);color:#fff;cursor:pointer;text-align:center}
.dfi-ch button b{display:block;font:700 12.5px/1.25 var(--j);overflow-wrap:anywhere}
.dfi-ch button small{display:block;margin-top:2px;font:600 10.5px var(--j);color:rgba(255,255,255,.6)}
.dfi-ch button[aria-pressed="true"]{background:#e4f222;border-color:#e4f222;color:#111}
.dfi-ch button[aria-pressed="true"] small{color:#3a3d14}
.dfi-sc{display:flex;align-items:center;justify-content:center;gap:6px 8px;margin-top:11px;flex-wrap:wrap}
.dfi-sc>span{width:100%;text-align:center;font:700 11px var(--j);letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.dfi-sc>i{font-style:normal;font:800 18px var(--j);color:rgba(255,255,255,.6)}
.dfi-st{display:flex;align-items:center;border-radius:99px;background:rgba(10,12,30,.5);border:1.5px solid rgba(255,255,255,.18)}
.dfi-st button{width:36px;height:36px;border:0;border-radius:50%;background:none;color:#fff;font:800 18px var(--j);cursor:pointer}
.dfi-st output{min-width:22px;text-align:center;font:800 18px var(--j);color:#fff;font-variant-numeric:tabular-nums}
.dfi-mini{margin:8px 0 0;font:500 11.5px/1.4 var(--j);color:rgba(255,255,255,.62)}
.dfi-hid{margin:10px 0 0;padding:9px 12px;border-radius:14px;border:1.5px dashed rgba(255,255,255,.3);font:600 12px var(--j);color:rgba(255,255,255,.8)}
.dfi-cs{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.dfi-cs div{position:relative;padding:9px 4px 8px;border-radius:14px;text-align:center;background:rgba(10,12,30,.4);border:1.5px solid rgba(255,255,255,.14)}
.dfi-cs div b{font:800 19px var(--j);color:#fff}.dfi-cs div small{margin-left:3px;font:700 10.5px var(--j);color:rgba(255,255,255,.6)}
.dfi-cs div:before{content:"";position:absolute;left:14px;right:14px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--k)}
.dfi-cs div:nth-child(1){--k:#22c55e}.dfi-cs div:nth-child(2){--k:#84cc16}.dfi-cs div:nth-child(3){--k:#eab308}.dfi-cs div:nth-child(4){--k:#f59e0b}.dfi-cs div:nth-child(5){--k:#f97316}.dfi-cs div:nth-child(6){--k:#ef4444}
.pdu-cta:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}
.dfi-err{margin:8px 0 0;min-height:1em;font:600 12.5px var(--j);color:#fca5a5;text-align:center}
.dfi-err:empty{display:none}
/* pastille dans la liste des ligues */
.dfb{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:99px;background:#ef4444;color:#fff;font:800 11px var(--j);vertical-align:2px;animation:dfb 1.6s ease-in-out infinite}
@keyframes dfb{50%{box-shadow:0 0 0 5px rgba(239,68,68,.18)}}
/* panneau de la ligue */
.dfi-lg{margin-top:14px;padding:14px;border-radius:16px;background:linear-gradient(160deg,rgba(124,58,237,.22),rgba(37,99,235,.12) 55%,rgba(20,26,46,.6));border:1px solid rgba(228,242,34,.28);color:#fff}
.dfi-lg header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:4px}
.dfi-lg h3{margin:0;font:800 16px var(--j);color:#fff}
.dfi-lg header span{font:600 12.5px var(--j);color:rgba(255,255,255,.75)}
.dfi-lg header b{color:#e4f222}
.dfi-lg h4{margin:14px 0 8px;font:800 11px var(--j);letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.dfi-l{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dfi-l>li{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(8,11,22,.55);border:1px solid rgba(255,255,255,.07)}
.dfi-av{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(180deg,hsl(var(--h) 70% 62%),hsl(var(--h) 60% 38%));font:800 12.5px var(--j);color:#fff}
.dfi-li{flex:1;min-width:0}
.dfi-li p{margin:0 0 2px;font:600 13.5px/1.35 var(--j);color:#fff}
.dfi-li small{display:block;font:500 11.5px/1.4 var(--j);color:rgba(255,255,255,.66)}
.dfi-rep{border-color:rgba(228,242,34,.55)!important;background:linear-gradient(135deg,rgba(228,242,34,.13),rgba(8,11,22,.6))!important}
.dfi-repz{margin-top:10px}
.dfi-repz .dfi-ch button:not([aria-pressed="true"]){background:rgba(8,11,22,.6)}
.dfi-rep{flex-wrap:wrap}
.dfi-rep>.dfi-repz,.dfi-rep>.dfi-act,.dfi-rep>.dfi-err{flex-basis:100%}
.dfi-rep>.dfi-repz{margin-top:4px}.dfi-rep>.dfi-act{margin-top:2px}
.dfi-act{display:flex;gap:8px;margin-top:10px}
.dfi-ok{flex:1;height:44px;border:0;border-radius:99px;background:#e4f222;color:#111;font:800 14.5px var(--j);cursor:pointer;box-shadow:0 8px 22px rgba(228,242,34,.22)}
.dfi-non,.dfi-annul{height:44px;padding:0 16px;border-radius:99px;border:1.5px solid rgba(255,255,255,.35);background:none;color:#fff;font:700 13px var(--j);cursor:pointer}
.dfi-annul{flex:none;height:34px;padding:0 12px;font-size:12px}
.dfi-ok:disabled{opacity:.6}
.dfi-pill{flex:none;align-self:center;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.1);font:800 12px var(--j);font-style:normal;color:#fff;white-space:nowrap}
.dfi-g .dfi-pill{background:#e4f222;color:#111}
.dfi-pe .dfi-pill{background:rgba(239,68,68,.25);color:#fca5a5}
.dfi-g{box-shadow:inset 3px 0 0 #e4f222}.dfi-pe{box-shadow:inset 3px 0 0 #ef4444}
.dfi-gris{opacity:.6}
.dfi-cours{box-shadow:inset 3px 0 0 #8b5cf6}
.dfi-vide{margin:10px 0 0;padding:12px;border-radius:14px;background:rgba(8,11,22,.45);text-align:center;font:500 12.5px var(--j);color:rgba(255,255,255,.75)}
.dfi-roi{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.dfi-roi li{display:grid;grid-template-columns:22px 34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 12px;border-radius:12px;background:rgba(8,11,22,.55)}
.dfi-roi li:first-child{background:linear-gradient(90deg,rgba(228,242,34,.2),rgba(8,11,22,.55) 70%);box-shadow:inset 3px 0 0 #e4f222}
.dfi-rg{font:800 13px var(--j);color:rgba(255,255,255,.7);text-align:center}
.dfi-ps b{display:block;font:700 13.5px var(--j);color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dfi-ps b i{font-style:normal;margin-left:4px;padding:1px 6px;border-radius:99px;background:#e4f222;color:#111;font:800 10px var(--j)}
.dfi-ps small{font:500 11.5px var(--j);color:rgba(255,255,255,.6)}
.dfi-so{font:800 16px var(--j);color:#e4f222;font-variant-numeric:tabular-nums}
.dfi-so small{margin-left:3px;font:700 10.5px var(--j);color:rgba(255,255,255,.6)}
.dfi-moi{outline:1.5px solid rgba(228,242,34,.5)}
.dfi-aide{margin:12px 2px 0;font:500 11.5px/1.45 var(--j);color:rgba(255,255,255,.55)}
/* animation : cadre plein écran */
.dfa{--dfj:"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif;--lime:#e4f222;position:fixed;inset:0;z-index:2147483000;overflow:hidden;background:radial-gradient(70% 45% at 50% 42%,#1b3aa8 0%,#0f1f6a 40%,#080b26 100%);font-family:var(--dfj)}
.dfa *,.dfa *:before,.dfa *:after{box-sizing:border-box;text-transform:none;letter-spacing:normal}
.dfa .ph{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center}
.dfa .fin{border:0;cursor:pointer;font-family:var(--dfj)}
.dfa .fin:focus-visible,.dfa-x:focus-visible{outline:3px solid #fff;outline-offset:3px}
.dfa-x{position:absolute;top:max(12px,env(safe-area-inset-top));right:12px;z-index:3;width:42px;height:42px;border-radius:50%;border:1.5px solid rgba(255,255,255,.4);background:rgba(8,11,38,.5);color:#fff;font:700 18px var(--dfj);cursor:pointer}

.dfi-li small.dfi-ko{color:#c4b5fd;font-weight:700}
@media (min-width:600px){.dfa .ph{border-radius:30px;box-shadow:0 0 0 1px rgba(255,255,255,.1),0 30px 90px rgba(0,0,0,.65)}.dfa{background:radial-gradient(60% 60% at 50% 45%,#13205e 0%,#070a1f 70%)}}
/* v9.98 — pop-up « Bienvenue dans ta ligue » + invitation */
.bvn .cel-c{cursor:default}
.bvn-nom{position:relative;z-index:1;margin:2px 0 0;max-width:24ch;text-align:center;font:900 italic 22px/1.2 var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:#ffd23f;text-shadow:0 2px 0 #141000,0 0 18px rgba(255,210,63,.45);opacity:0;overflow-wrap:anywhere}
.bvn .cel-s b{color:#39ff6a}
.bvn-info{position:relative;z-index:1;margin:6px 0 0;max-width:40ch;text-align:center;font:600 12px/1.4 var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:rgba(255,255,255,.72);opacity:0}
.bvn-info code{font:800 12.5px ui-monospace,monospace;letter-spacing:.08em;color:#ffd23f}
.cel-in .bvn-nom,.cel-in .bvn-info{animation:celRayIn .4s ease-out .55s forwards}
.bvn-neon{position:relative;z-index:1;margin:22px 0 0;padding:6px 16px 9px;border-radius:12px;font:400 15px/1 var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);letter-spacing:.06em;white-space:nowrap;opacity:0;border:1.5px solid rgba(255,40,60,.55);box-shadow:0 0 6px rgba(255,40,60,.55),0 0 18px rgba(255,40,60,.35),inset 0 0 10px rgba(255,40,60,.25)}
.bvn-neon span{font:700 italic 16px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:#fff;text-shadow:0 0 2px #fff,0 0 6px #ff2d3d,0 0 14px #ff2d3d,0 0 28px #b91c1c}
.bvn-neon i{font:600 italic 12px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:#ffd6d9;text-shadow:0 0 6px #ff4d5a;margin:0 2px}
.bvn-neon b{font:900 16px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);letter-spacing:.08em;color:#fff2f2;text-shadow:0 0 2px #fff,0 0 6px #ff2d3d,0 0 14px #ff2d3d,0 0 30px #991b1b}
.bvn-neon:after{content:"";position:absolute;left:12%;right:12%;bottom:-14px;height:10px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,40,60,.45),transparent);filter:blur(3px)}
.cel-in .bvn-neon{animation:bvnOn 1.1s steps(1) .95s forwards,bvnHum 4s steps(1) 2.4s infinite}
.cel-calme .bvn-nom,.cel-calme .bvn-info,.cel-calme .bvn-neon{animation:none!important;opacity:1}
@keyframes bvnOn{0%{opacity:.15}10%{opacity:.9}18%{opacity:.2}30%{opacity:1}38%{opacity:.4}46%,100%{opacity:1}}
@keyframes bvnHum{0%,100%{opacity:1}61%{opacity:.55}63%{opacity:1}64%{opacity:.7}66%{opacity:1}}
.prp-sh-code{margin:10px 0 0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(255,210,63,.1);border:1.5px dashed rgba(255,210,63,.55);font:600 13px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:rgba(255,255,255,.8)}
.prp-sh-code b{font:900 22px ui-monospace,monospace;letter-spacing:.18em;color:#ffd23f}
/* v9.100 — « BIENVENUE » au néon rouge (le joker garde son néon vert) */
.bvn .bvn-neon-b{filter:drop-shadow(0 0 2px #ff2d3d) drop-shadow(0 0 7px rgba(255,45,61,.8))}
.bvn .cel-ray{background:repeating-conic-gradient(from 0deg,rgba(255,45,61,.26) 0deg 7deg,transparent 7deg 22deg)}
/* v9.103 — fenêtre « Inviter » : lien court + copie en un geste */
.iv-lien{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:13px 14px;border-radius:16px;background:#0a0e1f;border:1.5px solid rgba(228,242,34,.55);cursor:text}
.iv-lien:focus-visible{outline:3px solid #fff;outline-offset:2px}
.iv-lien span{font-size:18px}
.iv-lien code{flex:1;min-width:0;font:800 clamp(15px,4.6vw,19px) ui-monospace,Menlo,Consolas,monospace;color:#fff;user-select:all;-webkit-user-select:all;overflow-wrap:anywhere}
.iv-lien code b{color:#e4f222;font:inherit}
.iv-go{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:54px;margin-top:12px;border:0;border-radius:999px;background:#e4f222;color:#111;font:800 16px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);cursor:pointer;box-shadow:0 10px 26px rgba(228,242,34,.25);transition:background .2s,color .2s}
.iv-go.ok{background:#22c55e;color:#fff;box-shadow:0 10px 26px rgba(34,197,94,.3)}
.iv-go:focus-visible,.iv-sec>*:focus-visible{outline:3px solid #fff;outline-offset:2px}
.iv-sec{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.iv-sec>*{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 8px;border-radius:999px;border:1.5px solid rgba(255,255,255,.25);background:transparent;color:#fff;font:700 14px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);text-decoration:none;cursor:pointer}
.iv-code{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:14px 0 0;padding:10px 14px;border-radius:14px;background:rgba(255,210,63,.08);border:1.5px dashed rgba(255,210,63,.45);font:600 12.5px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:#cbd2e6}
.iv-code b{font:900 20px ui-monospace,monospace;letter-spacing:.18em;color:#ffd23f}
.iv-ok{margin:10px 0 0;text-align:center;font:800 13px var(--j,"TF Jakarta","Plus Jakarta Sans",Inter,system-ui,sans-serif);color:#4ade80;opacity:0}
.iv-ok:empty{display:none}
.iv-ok.on{animation:ivOk 2.4s ease forwards}
@keyframes ivOk{0%{opacity:0}10%,85%{opacity:1}100%{opacity:0}}
/* v9.122 : présentation compacte par défaut, « Voir plus » / « Réduire » */
.dfi-compact .dfi-plus{display:none!important}
.dfi-compact .dfi-moi-loin{margin-top:6px;position:relative}
.dfi-compact .dfi-moi-loin::before{content:"⋯";position:absolute;left:0;right:0;top:-14px;text-align:center;color:rgba(255,255,255,.4);font:800 12px/1 var(--j,system-ui);letter-spacing:.2em}
.dfi-voir{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:42px;margin-top:12px;border:1px solid rgba(228,242,34,.45);border-radius:12px;background:rgba(228,242,34,.08);color:#f3f8b8;font:800 13.5px var(--j,system-ui);cursor:pointer}
.dfi-voir svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.dfi-voir[aria-expanded=true] svg{transform:rotate(180deg)}
.dfi-voir:hover{background:rgba(228,242,34,.16)}
.dfi-voir:focus-visible{outline:2px solid #e4f222;outline-offset:2px}
/* v9.123 : fermé par défaut — titre + « Voir les défis » ; contenu à la demande, « Réduire » pour refermer */
.dfi-lg header{align-items:center}
.dfi-lg header h3{margin-right:auto}
.dfi-ferme{padding-bottom:12px}
.dfi-corps[hidden]{display:none}
.dfi-n{padding:2px 9px;border-radius:999px;background:#e4f222;color:#1a1d00;font:800 11.5px var(--j,system-ui);font-style:normal}
.dfi-lg header .dfi-voir{width:auto;min-height:32px;margin:0;padding:0 12px;border-radius:999px;font-size:12.5px}
.dfi-solde{margin:10px 0 0;font:600 12.5px var(--j,system-ui);color:rgba(255,255,255,.75)}
.dfi-solde b{color:#e4f222}
.dfi-reduire{display:block;margin:12px 0 0 auto;min-height:34px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);color:#e8ecf6;font:700 12.5px var(--j,system-ui);cursor:pointer}
.dfi-reduire:focus-visible{outline:2px solid #e4f222;outline-offset:2px}
